lg
2024-09-11 589c7a92b276c31c56217b7bb31524bbd982d5ce
报表
已重命名2个文件
已添加4个文件
已删除1个文件
512 ■■■■■ 文件已修改
DevApp/Gs.DevApp/DevFrm/Rpt/RptPreview.Designer.cs 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Rpt/RptPreview.cs 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Rpt/RptPreview.resx 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Rpt/RptUser.cs 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Sys/EasyRpt.Designer.cs 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Sys/EasyRpt.cs 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Sys/EasyRpt.resx 178 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Rpt/RptPreview.Designer.cs
ÎļþÃû´Ó DevApp/Gs.DevApp/DevFrm/Rpt/RptUser.Designer.cs ÐÞ¸Ä
@@ -1,7 +1,7 @@

namespace Gs.DevApp.DevFrm.Rpt
{
    partial class RptUser
    partial class RptPreview
    {
        /// <summary>
        /// Required designer variable.
@@ -41,7 +41,7 @@
            this.previewControl1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.previewControl1.Name = "previewControl1";
            this.previewControl1.PageOffset = new System.Drawing.Point(10, 10);
            this.previewControl1.Size = new System.Drawing.Size(564, 543);
            this.previewControl1.Size = new System.Drawing.Size(712, 543);
            this.previewControl1.TabIndex = 0;
            this.previewControl1.UIStyle = FastReport.Utils.UIStyle.Office2007Black;
            // 
@@ -49,10 +49,13 @@
            // 
            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 18F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(564, 543);
            this.ClientSize = new System.Drawing.Size(712, 543);
            this.Controls.Add(this.previewControl1);
            this.MinimizeBox = false;
            this.Name = "RptUser";
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
            this.Text = "RptUser";
            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
            this.ResumeLayout(false);
        }
DevApp/Gs.DevApp/DevFrm/Rpt/RptPreview.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,87 @@

using DevExpress.XtraEditors;
using Gs.DevApp.Entity;
using Gs.DevApp.ToolBox;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraBars.Navigation;
using DevExpress.XtraTab;
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Reflection;
using System.Windows.Forms;
using Gs.DevApp.ToolBox;
using Newtonsoft.Json;
using Gs.DevApp.Entity;
using Newtonsoft.Json.Linq;
using System.IO;
namespace Gs.DevApp.DevFrm.Rpt
{
    public partial class RptPreview : DevExpress.XtraEditors.XtraForm
    {
        private string _reportType;
        public RptPreview(string reportType)
        {
            _reportType = reportType;
            InitializeComponent();
            getPageList();
        }
        /// <summary>
        /// è¯»å–报表数据列表
        /// </summary>
        private void getPageList()
        {
            var _obj = new
            {
                reportType = _reportType,
                sortName = "a.userName",
                sortOrder = "asc",
                keyWhere = ""
            };
            try
            {
                string strJson = UtilityHelper.HttpPost("", "Report/GetReportList", JsonConvert.SerializeObject(_obj));
                JObject _job = JObject.Parse(strJson);
                string rtnCode = _job["rtnCode"].ToString();
                if (int.Parse(rtnCode) > 0)
                {
                    JArray array = new JArray();
                    foreach (var a in _job["rtnData"]["list"])
                    {
                        array.Add(a);
                    }
                    DataTable dt = JsonConvert.DeserializeObject<DataTable>(array.ToString());
                    DataSet ds = new DataSet();
                    dt.TableName = "Table1";
                    ds.Tables.Add(dt);
                    FastReport.Report report = new FastReport.Report();
                    byte[] buffer = (byte[])_job["rtnData"]["reportData"];
                    using (MemoryStream Stream = new MemoryStream(buffer))
                    {
                        report.Load(Stream);
                    }
                    report.RegisterData(ds);
                    report.Preview = previewControl1;
                    report.Prepare();
                    report.ShowPrepared();
                }
            }
            catch (Exception ex)
            {
                ToolBox.MsgHelper.Warning("提示:" + ex.Message);
            }
        }
    }
}
DevApp/Gs.DevApp/DevFrm/Rpt/RptPreview.resx
DevApp/Gs.DevApp/DevFrm/Rpt/RptUser.cs
ÎļþÒÑɾ³ý
DevApp/Gs.DevApp/DevFrm/Sys/EasyRpt.Designer.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,101 @@

namespace Gs.DevApp.DevFrm.Sys
{
    partial class EasyRpt
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }
        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EasyRpt));
            FastReport.Design.DesignerSettings designerSettings1 = new FastReport.Design.DesignerSettings();
            FastReport.Design.DesignerRestrictions designerRestrictions1 = new FastReport.Design.DesignerRestrictions();
            FastReport.Export.Email.EmailSettings emailSettings1 = new FastReport.Export.Email.EmailSettings();
            FastReport.PreviewSettings previewSettings1 = new FastReport.PreviewSettings();
            FastReport.ReportSettings reportSettings1 = new FastReport.ReportSettings();
            this.designerControl1 = new FastReport.Design.StandardDesigner.DesignerControl();
            this.panel2 = new System.Windows.Forms.Panel();
            this.environmentSettings1 = new FastReport.EnvironmentSettings();
            ((System.ComponentModel.ISupportInitialize)(this.designerControl1)).BeginInit();
            this.SuspendLayout();
            //
            // designerControl1
            //
            this.designerControl1.AskSave = true;
            this.designerControl1.LayoutState = resources.GetString("designerControl1.LayoutState");
            this.designerControl1.Location = new System.Drawing.Point(0, 0);
            this.designerControl1.Name = "designerControl1";
            this.designerControl1.TabIndex = 0;
            this.designerControl1.UIStyle = FastReport.Utils.UIStyle.Office2007Black;
            //
            // panel2
            //
            this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
            this.panel2.Location = new System.Drawing.Point(0, 0);
            this.panel2.Name = "panel2";
            this.panel2.Size = new System.Drawing.Size(893, 578);
            this.panel2.TabIndex = 1;
            //
            // environmentSettings1
            //
            designerSettings1.ApplicationConnection = null;
            designerSettings1.DefaultFont = new System.Drawing.Font("宋体", 9F);
            designerSettings1.Icon = ((System.Drawing.Icon)(resources.GetObject("designerSettings1.Icon")));
            designerSettings1.Restrictions = designerRestrictions1;
            designerSettings1.Text = "";
            this.environmentSettings1.DesignerSettings = designerSettings1;
            emailSettings1.Address = "";
            emailSettings1.Host = "";
            emailSettings1.MessageTemplate = "";
            emailSettings1.Name = "";
            emailSettings1.Password = "";
            emailSettings1.UserName = "";
            this.environmentSettings1.EmailSettings = emailSettings1;
            previewSettings1.Icon = ((System.Drawing.Icon)(resources.GetObject("previewSettings1.Icon")));
            previewSettings1.Text = "";
            this.environmentSettings1.PreviewSettings = previewSettings1;
            this.environmentSettings1.ReportSettings = reportSettings1;
            this.environmentSettings1.UIStyle = FastReport.Utils.UIStyle.Office2007Black;
            //
            // EasyRpt
            //
            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 18F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(893, 578);
            this.Controls.Add(this.panel2);
            this.Name = "EasyRpt";
            this.Text = "EasyRpt";
            ((System.ComponentModel.ISupportInitialize)(this.designerControl1)).EndInit();
            this.ResumeLayout(false);
        }
        #endregion
        private FastReport.Design.StandardDesigner.DesignerControl designerControl1;
        private System.Windows.Forms.Panel panel2;
        private FastReport.EnvironmentSettings environmentSettings1;
    }
}
DevApp/Gs.DevApp/DevFrm/Sys/EasyRpt.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,95 @@
using DevExpress.XtraEditors;
using FastReport;
using Gs.DevApp.Entity;
using Gs.DevApp.ToolBox;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Gs.DevApp.DevFrm.Sys
{
    public partial class EasyRpt : DevExpress.XtraEditors.XtraForm
    {
        private string _reportType;
        public EasyRpt(string reportType)
        {
            _reportType = reportType;
            InitializeComponent();
            Report report = new Report();
            DataTable RptRow = new DataTable();
            var _obj = new
            {
                reportType = _reportType,
            };
            try
            {
                string strJson = UtilityHelper.HttpPost("", "Report/GetTemplate", JsonConvert.SerializeObject(_obj));
                ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.GetDataByJson(strJson);
                if (_rtn.rtnCode > 0)
                {
                    dynamic dy = _rtn.rtnData;
                    byte[] buffer = (byte[])dy.reportData;
                    using (MemoryStream Stream = new MemoryStream(buffer))
                    {
                        report.Load(Stream);
                    }
                }
                else
                    ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg);
            }
            catch (Exception ex)
            {
                ToolBox.MsgHelper.Warning("提示:" + ex.Message);
            }
            designerControl1.Report = report;
            designerControl1.RefreshLayout();
            panel2.Controls.Add(designerControl1);
            designerControl1.Dock = DockStyle.Fill;
            designerControl1.UIStateChanged += designerControl1_UIStateChanged;
            environmentSettings1.CustomSaveReport += EnvironmentSettings1_CustomSaveReport;
            environmentSettings1.CustomSaveDialog += EnvironmentSettings1_CustomSaveDialog;
        }
        private void EnvironmentSettings1_CustomSaveDialog(object sender, FastReport.Design.OpenSaveDialogEventArgs e)
        {
        }
        private void EnvironmentSettings1_CustomSaveReport(object sender, FastReport.Design.OpenSaveReportEventArgs e)
        {
            MemoryStream ms = new MemoryStream();
            designerControl1.Report.Save(ms);
            byte[] dddd = ms.ToArray();
            var _obj = new
            {
                rptType = _reportType,
                rptData = dddd,
            };
            try
            {
                string strJson = UtilityHelper.HttpPost("", "Report/EdtTemplate", JsonConvert.SerializeObject(_obj));
                ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.GetDataByJson(strJson);
                ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnData.outMsg);
            }
            catch (Exception ex)
            {
                ToolBox.MsgHelper.Warning("提示:" + ex.Message);
            }
            ms.Dispose();
            designerControl1.Report.Dispose();
        }
        // è®¾è®¡å™¨ui改变事件
        private void designerControl1_UIStateChanged(object sender, EventArgs e)
        {
            // btnSave.Enabled = designerControl1.cmdSave.Enabled;
            // btnUndo.Enabled = designerControl1.cmdUndo.Enabled;
            // btnRedo.Enabled = designerControl1.cmdRedo.Enabled;
        }
    }
}
DevApp/Gs.DevApp/DevFrm/Sys/EasyRpt.resx
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,178 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!--
    Microsoft ResX Schema
    Version 2.0
    The primary goals of this format is to allow a simple XML format
    that is mostly human readable. The generation and parsing of the
    various data types are done through the TypeConverter classes
    associated with the data types.
    Example:
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
    There are any number of "resheader" rows that contain simple
    name/value pairs.
    Each data row contains a name, and value. The row also contains a
    type or mimetype. Type corresponds to a .NET class that support
    text/value conversion through the TypeConverter architecture.
    Classes that don't support this are serialized and stored with the
    mimetype set.
    The mimetype is used for serialized objects, and tells the
    ResXResourceReader how to depersist the object. This is currently not
    extensible. For a given mimetype the value must be set accordingly:
    Note - application/x-microsoft.net.object.binary.base64 is the format
    that the ResXResourceWriter will generate, however the reader can
    read any of the formats listed below.
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.
    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <metadata name="designerControl1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
  <data name="designerControl1.LayoutState" xml:space="preserve">
    <value>&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;Config&gt;&lt;Designer&gt;&lt;DockNew Text="&amp;lt;dotnetbarlayout version=&amp;quot;6&amp;quot; zorder=&amp;quot;3,4,1,2&amp;quot;&amp;gt;&amp;lt;docksite size=&amp;quot;0&amp;quot; dockingside=&amp;quot;Top&amp;quot; originaldocksitesize=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;docksite size=&amp;quot;0&amp;quot; dockingside=&amp;quot;Bottom&amp;quot; originaldocksitesize=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;dockcontainer orientation=&amp;quot;1&amp;quot; w=&amp;quot;0&amp;quot; h=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;barcontainer w=&amp;quot;0&amp;quot; h=&amp;quot;95&amp;quot;&amp;gt;&amp;lt;bar name=&amp;quot;MessagesWindowBar&amp;quot; dockline=&amp;quot;0&amp;quot; layout=&amp;quot;2&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;4&amp;quot; visible=&amp;quot;false&amp;quot;&amp;gt;&amp;lt;items&amp;gt;&amp;lt;item name=&amp;quot;MessagesWindow&amp;quot; origBar=&amp;quot;&amp;quot; origPos=&amp;quot;-1&amp;quot; pos=&amp;quot;0&amp;quot; visible=&amp;quot;false&amp;quot; /&amp;gt;&amp;lt;/items&amp;gt;&amp;lt;/bar&amp;gt;&amp;lt;/barcontainer&amp;gt;&amp;lt;/dockcontainer&amp;gt;&amp;lt;/docksite&amp;gt;&amp;lt;docksite size=&amp;quot;0&amp;quot; dockingside=&amp;quot;Left&amp;quot; originaldocksitesize=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;docksite size=&amp;quot;250&amp;quot; dockingside=&amp;quot;Right&amp;quot; originaldocksitesize=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;dockcontainer orientation=&amp;quot;1&amp;quot; w=&amp;quot;0&amp;quot; h=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;barcontainer w=&amp;quot;247&amp;quot; h=&amp;quot;182&amp;quot;&amp;gt;&amp;lt;bar name=&amp;quot;DictionaryWindowBar&amp;quot; dockline=&amp;quot;0&amp;quot; layout=&amp;quot;2&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;2&amp;quot; visible=&amp;quot;true&amp;quot; seldocktab=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;items&amp;gt;&amp;lt;item name=&amp;quot;DictionaryWindow&amp;quot; origBar=&amp;quot;&amp;quot; origPos=&amp;quot;-1&amp;quot; pos=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;item name=&amp;quot;ReportTreeWindow&amp;quot; origBar=&amp;quot;&amp;quot; origPos=&amp;quot;-1&amp;quot; pos=&amp;quot;1&amp;quot; /&amp;gt;&amp;lt;/items&amp;gt;&amp;lt;/bar&amp;gt;&amp;lt;/barcontainer&amp;gt;&amp;lt;barcontainer w=&amp;quot;247&amp;quot; h=&amp;quot;-86&amp;quot;&amp;gt;&amp;lt;bar name=&amp;quot;PropertiesWindowBar&amp;quot; dockline=&amp;quot;0&amp;quot; layout=&amp;quot;2&amp;quot; dockoffset=&amp;quot;64&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;2&amp;quot; visible=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;items&amp;gt;&amp;lt;item name=&amp;quot;PropertiesWindow&amp;quot; origBar=&amp;quot;&amp;quot; origPos=&amp;quot;-1&amp;quot; pos=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;/items&amp;gt;&amp;lt;/bar&amp;gt;&amp;lt;/barcontainer&amp;gt;&amp;lt;/dockcontainer&amp;gt;&amp;lt;/docksite&amp;gt;&amp;lt;bars&amp;gt;&amp;lt;bar name=&amp;quot;StandardToolbar&amp;quot; dockline=&amp;quot;0&amp;quot; layout=&amp;quot;0&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;3&amp;quot; visible=&amp;quot;true&amp;quot; /&amp;gt;&amp;lt;bar name=&amp;quot;TextToolbar&amp;quot; dockline=&amp;quot;1&amp;quot; layout=&amp;quot;0&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;3&amp;quot; visible=&amp;quot;true&amp;quot; /&amp;gt;&amp;lt;bar name=&amp;quot;BorderToolbar&amp;quot; dockline=&amp;quot;1&amp;quot; layout=&amp;quot;0&amp;quot; dockoffset=&amp;quot;152&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;3&amp;quot; visible=&amp;quot;true&amp;quot; /&amp;gt;&amp;lt;bar name=&amp;quot;StyleToolbar&amp;quot; dockline=&amp;quot;2&amp;quot; layout=&amp;quot;0&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;3&amp;quot; visible=&amp;quot;false&amp;quot; /&amp;gt;&amp;lt;bar name=&amp;quot;LayoutToolbar&amp;quot; dockline=&amp;quot;2&amp;quot; layout=&amp;quot;0&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;3&amp;quot; visible=&amp;quot;false&amp;quot; /&amp;gt;&amp;lt;bar name=&amp;quot;ObjectsToolbar&amp;quot; dockline=&amp;quot;0&amp;quot; layout=&amp;quot;0&amp;quot; dockoffset=&amp;quot;0&amp;quot; state=&amp;quot;2&amp;quot; dockside=&amp;quot;1&amp;quot; visible=&amp;quot;true&amp;quot; /&amp;gt;&amp;lt;/bars&amp;gt;&amp;lt;/dotnetbarlayout&amp;gt;"/&gt;&lt;/Designer&gt;&lt;/Config&gt;</value>
  </data>
  <metadata name="environmentSettings1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>202, 17</value>
  </metadata>
  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  <data name="designerSettings1.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
        AAA4ODhhODg45zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4
        OOc4ODhhODg456B3J//CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjCH/wowh/8KM
        If+gdyf/ODg45zg4OP/CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjSL/zqNO/9Ot
        Yf/CjCH/wowh/zg4OP84ODj/wowh/8KMIf/AiyH/uYUg/72IIP/CjCH/wowh/8KMIf/DjST/3sGH//78
        +v/7+PL/yZk7/8KMIf84ODj/ODg4/8KMIf/CjCH/JhwG/wAAAP8GBAH/tIIf/8KMIf/DjSP/4MWQ//78
        +v/8+vX/27t8/8KMIf/CjCH/ODg4/zg4OP/CjCH/wowh/xQOBP8AAAD/AAAA/6x/Jf/DjiT/4smW//79
        +v/7+fP/17Rv/8KMIf/CjCH/wowh/zg4OP84ODj/wowh/8KMIf8UDgT/AAAA/wAAAP+ugy7//v38////
        /////////fz5/+rWsP/JmDn/wowh/8KMIf84ODj/ODg4/8KMIf/CjCH/FA4E/wAAAP8AAAD/TzsS/3le
        Kf9/Yyz/zbOA//379///////7t/C/8KMIf/CjCH/ODg4/zk5Of/DjiX/yJc2/zYxKP8uLi7/NjY2/zs7
        O/87Ozv/Ozs7/4p6Wv/48eT///////v48v/LnUH/x5Qx/0FBQf+vr6//1a9l/9WvZf9cWFH/Tk5O/05O
        Tv97b1b/koFe/5iFYf/Vw57//fv4///////06db/1a9l/9WvZf+vr6//mJiY/9WvZf/Vr2X/XFhR/05O
        Tv9OTk7/x6lu///+/v////////////7+/f/17Nr/27x9/9WvZf/Vr2X/mJiY/4GBgf/Vr2X/1a9l/11Y
        Uf9OTk7/Tk5O/4J1Wf+fjGf/n4xn/6GOZ//Srmn/1a9l/9WvZf/Vr2X/1a9l/4GBgf9ra2v/1a9l/9Wv
        Zf+Yg1v/WVZQ/05OTv9OTk7/Tk5O/05OTv9SUU//waFi/9WvZf/Vr2X/1a9l/9WvZf9ra2v/SUlJ/9Wv
        Zf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/SUlJ/zg4
        OOeukVr/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/rpFa/zg4
        OOc4ODhhODg45zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4
        OOc4ODhhAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
        //8AAP//AAD//w==
</value>
  </data>
  <data name="previewSettings1.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
        AAA4ODhhODg45zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4
        OOc4ODhhODg456B3J//CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjCH/wowh/8KM
        If+gdyf/ODg45zg4OP/CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjCH/wowh/8KMIf/CjSL/zqNO/9Ot
        Yf/CjCH/wowh/zg4OP84ODj/wowh/8KMIf/AiyH/uYUg/72IIP/CjCH/wowh/8KMIf/DjST/3sGH//78
        +v/7+PL/yZk7/8KMIf84ODj/ODg4/8KMIf/CjCH/JhwG/wAAAP8GBAH/tIIf/8KMIf/DjSP/4MWQ//78
        +v/8+vX/27t8/8KMIf/CjCH/ODg4/zg4OP/CjCH/wowh/xQOBP8AAAD/AAAA/6x/Jf/DjiT/4smW//79
        +v/7+fP/17Rv/8KMIf/CjCH/wowh/zg4OP84ODj/wowh/8KMIf8UDgT/AAAA/wAAAP+ugy7//v38////
        /////////fz5/+rWsP/JmDn/wowh/8KMIf84ODj/ODg4/8KMIf/CjCH/FA4E/wAAAP8AAAD/TzsS/3le
        Kf9/Yyz/zbOA//379///////7t/C/8KMIf/CjCH/ODg4/zk5Of/DjiX/yJc2/zYxKP8uLi7/NjY2/zs7
        O/87Ozv/Ozs7/4p6Wv/48eT///////v48v/LnUH/x5Qx/0FBQf+vr6//1a9l/9WvZf9cWFH/Tk5O/05O
        Tv97b1b/koFe/5iFYf/Vw57//fv4///////06db/1a9l/9WvZf+vr6//mJiY/9WvZf/Vr2X/XFhR/05O
        Tv9OTk7/x6lu///+/v////////////7+/f/17Nr/27x9/9WvZf/Vr2X/mJiY/4GBgf/Vr2X/1a9l/11Y
        Uf9OTk7/Tk5O/4J1Wf+fjGf/n4xn/6GOZ//Srmn/1a9l/9WvZf/Vr2X/1a9l/4GBgf9ra2v/1a9l/9Wv
        Zf+Yg1v/WVZQ/05OTv9OTk7/Tk5O/05OTv9SUU//waFi/9WvZf/Vr2X/1a9l/9WvZf9ra2v/SUlJ/9Wv
        Zf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/SUlJ/zg4
        OOeukVr/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/1a9l/9WvZf/Vr2X/rpFa/zg4
        OOc4ODhhODg45zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4OP84ODj/ODg4/zg4
        OOc4ODhhAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
        //8AAP//AAD//w==
</value>
  </data>
</root>