From fe25786d74d5387d16b490c8c0ef7ad6da2c821c Mon Sep 17 00:00:00 2001
From: lg <999544862qq.com>
Date: 星期四, 29 八月 2024 16:26:41 +0800
Subject: [PATCH] 用户管理

---
 DevApp/Gs.DevApp/DevFrm/FrmMain.cs                        |   20 +-
 DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs               |   14 ++
 DevApp/Gs.DevApp/Resources/doublenext_16x16.png           |    0 
 DevApp/Gs.DevApp/DevFrm/FrmLogin.Designer.cs              |   51 +++++---
 DevApp/Gs.DevApp/Gs.DevApp.csproj                         |   55 ++++++++-
 DevApp/Gs.DevApp/Resources/last_16x16.png                 |    0 
 DevApp/Gs.DevApp/Resources/first_32x321.png               |    0 
 DevApp/Gs.DevApp/Resources/first_32x32.png                |    0 
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs                 |   11 +
 DevApp/Gs.DevApp/Resources/mapit_16x16.png                |    0 
 DevApp/Gs.DevApp/DevFrm/FrmLogin.cs                       |    1 
 DevApp/Gs.DevApp/Properties/Resources1.Designer.cs        |  120 ++++++++++++++++++++
 DevApp/Gs.DevApp/Resources/first_16x16.png                |    0 
 DevApp/Gs.DevApp/Resources/login_bg6.png                  |    0 
 DevApp/Gs.DevApp/Properties/Resources.resx                |   56 +++++++-
 DevApp/Gs.DevApp/Resources/doubleprev_16x16.png           |    0 
 DevApp/Gs.DevApp/Program.cs                               |    1 
 DevApp/Gs.DevApp/Resources/edit_32x32.png                 |    0 
 DevApp/Gs.DevApp/Resources/knowledgebasearticle_16x16.png |    0 
 19 files changed, 283 insertions(+), 46 deletions(-)

diff --git a/DevApp/Gs.DevApp/DevFrm/FrmLogin.Designer.cs b/DevApp/Gs.DevApp/DevFrm/FrmLogin.Designer.cs
index a4bab7c..5778c83 100644
--- a/DevApp/Gs.DevApp/DevFrm/FrmLogin.Designer.cs
+++ b/DevApp/Gs.DevApp/DevFrm/FrmLogin.Designer.cs
@@ -53,13 +53,13 @@
             // 
             this.lbVersion.AutoSize = true;
             this.lbVersion.BackColor = System.Drawing.Color.Transparent;
-            this.lbVersion.Font = new System.Drawing.Font("Tahoma", 9F);
+            this.lbVersion.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold);
             this.lbVersion.ForeColor = System.Drawing.Color.White;
-            this.lbVersion.Location = new System.Drawing.Point(501, 33);
+            this.lbVersion.Location = new System.Drawing.Point(12, 9);
             this.lbVersion.Name = "lbVersion";
-            this.lbVersion.Size = new System.Drawing.Size(100, 18);
+            this.lbVersion.Size = new System.Drawing.Size(113, 18);
             this.lbVersion.TabIndex = 244;
-            this.lbVersion.Text = "V5.0 (姝e紡鐗�)";
+            this.lbVersion.Text = "骞挎繁MES-V2.0";
             // 
             // panel1
             // 
@@ -73,10 +73,11 @@
             this.panel1.Controls.Add(this.btnLogin);
             this.panel1.Controls.Add(this.labelControl2);
             this.panel1.Controls.Add(this.labelControl1);
-            this.panel1.Location = new System.Drawing.Point(218, 187);
+            this.panel1.Font = new System.Drawing.Font("Tahoma", 9F);
+            this.panel1.Location = new System.Drawing.Point(218, 465);
             this.panel1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.panel1.Name = "panel1";
-            this.panel1.Size = new System.Drawing.Size(392, 239);
+            this.panel1.Size = new System.Drawing.Size(392, 276);
             this.panel1.TabIndex = 243;
             // 
             // txtUser
@@ -93,10 +94,10 @@
             // 
             // chkSaveLoginInfo
             // 
-            this.chkSaveLoginInfo.Location = new System.Drawing.Point(99, 157);
+            this.chkSaveLoginInfo.Location = new System.Drawing.Point(102, 139);
             this.chkSaveLoginInfo.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.chkSaveLoginInfo.Name = "chkSaveLoginInfo";
-            this.chkSaveLoginInfo.Properties.Appearance.ForeColor = System.Drawing.Color.White;
+            this.chkSaveLoginInfo.Properties.Appearance.ForeColor = System.Drawing.Color.Black;
             this.chkSaveLoginInfo.Properties.Appearance.Options.UseForeColor = true;
             this.chkSaveLoginInfo.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.UltraFlat;
             this.chkSaveLoginInfo.Properties.Caption = "淇濆瓨鐧诲綍淇℃伅";
@@ -106,7 +107,7 @@
             // txtPwd
             // 
             this.txtPwd.EditValue = "csframework";
-            this.txtPwd.Location = new System.Drawing.Point(102, 48);
+            this.txtPwd.Location = new System.Drawing.Point(102, 52);
             this.txtPwd.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.txtPwd.Name = "txtPwd";
             this.txtPwd.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 10F);
@@ -121,7 +122,7 @@
             this.btnCancel.ButtonStyle = DevExpress.XtraEditors.Controls.BorderStyles.HotFlat;
             this.btnCancel.Cursor = System.Windows.Forms.Cursors.Hand;
             this.btnCancel.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("btnCancel.ImageOptions.Image")));
-            this.btnCancel.Location = new System.Drawing.Point(191, 193);
+            this.btnCancel.Location = new System.Drawing.Point(223, 193);
             this.btnCancel.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.btnCancel.Name = "btnCancel";
             this.btnCancel.Size = new System.Drawing.Size(87, 37);
@@ -130,21 +131,21 @@
             // 
             // labelControl3
             // 
-            this.labelControl3.Appearance.ForeColor = System.Drawing.Color.White;
+            this.labelControl3.Appearance.ForeColor = System.Drawing.Color.Black;
             this.labelControl3.Appearance.Options.UseForeColor = true;
             this.labelControl3.Appearance.Options.UseTextOptions = true;
             this.labelControl3.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
             this.labelControl3.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None;
-            this.labelControl3.Location = new System.Drawing.Point(6, 89);
+            this.labelControl3.Location = new System.Drawing.Point(6, 97);
             this.labelControl3.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.labelControl3.Name = "labelControl3";
             this.labelControl3.Size = new System.Drawing.Size(93, 18);
             this.labelControl3.TabIndex = 233;
-            this.labelControl3.Text = "甯愬锛�";
+            this.labelControl3.Text = "缁勭粐鏈烘瀯锛�";
             // 
             // txtDataset
             // 
-            this.txtDataset.Location = new System.Drawing.Point(102, 86);
+            this.txtDataset.Location = new System.Drawing.Point(102, 93);
             this.txtDataset.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.txtDataset.Name = "txtDataset";
             this.txtDataset.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.HotFlat;
@@ -163,7 +164,7 @@
             this.btnLogin.ButtonStyle = DevExpress.XtraEditors.Controls.BorderStyles.HotFlat;
             this.btnLogin.Cursor = System.Windows.Forms.Cursors.Hand;
             this.btnLogin.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("btnLogin.ImageOptions.Image")));
-            this.btnLogin.Location = new System.Drawing.Point(101, 193);
+            this.btnLogin.Location = new System.Drawing.Point(102, 193);
             this.btnLogin.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.btnLogin.Name = "btnLogin";
             this.btnLogin.Size = new System.Drawing.Size(87, 37);
@@ -172,12 +173,14 @@
             // 
             // labelControl2
             // 
-            this.labelControl2.Appearance.ForeColor = System.Drawing.Color.White;
+            this.labelControl2.Appearance.Font = new System.Drawing.Font("Tahoma", 10F);
+            this.labelControl2.Appearance.ForeColor = System.Drawing.Color.Black;
+            this.labelControl2.Appearance.Options.UseFont = true;
             this.labelControl2.Appearance.Options.UseForeColor = true;
             this.labelControl2.Appearance.Options.UseTextOptions = true;
             this.labelControl2.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
             this.labelControl2.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None;
-            this.labelControl2.Location = new System.Drawing.Point(6, 51);
+            this.labelControl2.Location = new System.Drawing.Point(6, 58);
             this.labelControl2.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.labelControl2.Name = "labelControl2";
             this.labelControl2.Size = new System.Drawing.Size(93, 18);
@@ -186,12 +189,14 @@
             // 
             // labelControl1
             // 
-            this.labelControl1.Appearance.ForeColor = System.Drawing.Color.White;
+            this.labelControl1.Appearance.Font = new System.Drawing.Font("Tahoma", 10F);
+            this.labelControl1.Appearance.ForeColor = System.Drawing.Color.Black;
+            this.labelControl1.Appearance.Options.UseFont = true;
             this.labelControl1.Appearance.Options.UseForeColor = true;
             this.labelControl1.Appearance.Options.UseTextOptions = true;
             this.labelControl1.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
             this.labelControl1.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None;
-            this.labelControl1.Location = new System.Drawing.Point(6, 13);
+            this.labelControl1.Location = new System.Drawing.Point(6, 15);
             this.labelControl1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.labelControl1.Name = "labelControl1";
             this.labelControl1.Size = new System.Drawing.Size(93, 18);
@@ -211,12 +216,18 @@
             // 
             // FrmLogin
             // 
+            this.Appearance.BackColor = System.Drawing.Color.Black;
+            this.Appearance.Options.UseBackColor = true;
             this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 18F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(824, 494);
+            this.BackgroundImageLayoutStore = System.Windows.Forms.ImageLayout.None;
+            this.BackgroundImageStore = global::Gs.DevApp.Properties.Resources.login_bg6;
+            this.ClientSize = new System.Drawing.Size(782, 806);
             this.Controls.Add(this.lbVersion);
             this.Controls.Add(this.panel1);
             this.Controls.Add(this.lblLoadingInfo);
+            this.DoubleBuffered = true;
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
             this.MaximizeBox = false;
             this.MinimizeBox = false;
             this.Name = "FrmLogin";
diff --git a/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs b/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs
index eaefc28..5090152 100644
--- a/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs
+++ b/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs
@@ -15,6 +15,7 @@
             this.Text = System.Configuration.ConfigurationSettings.AppSettings.Get("ProductName").ToString();
             btnLogin.Click += BtnLogin_Click;
             btnCancel.Click += BtnCancel_Click;
+            UtilityHelper.SetFont(panel1);
         }
 
         private void BtnCancel_Click(object sender, EventArgs e)
diff --git a/DevApp/Gs.DevApp/DevFrm/FrmMain.cs b/DevApp/Gs.DevApp/DevFrm/FrmMain.cs
index 0cd01bf..c78fca3 100644
--- a/DevApp/Gs.DevApp/DevFrm/FrmMain.cs
+++ b/DevApp/Gs.DevApp/DevFrm/FrmMain.cs
@@ -25,7 +25,7 @@
 
         private void getTree()
         {
-            toolTime.Text = "鐧诲綍鏃堕棿"+ LoginInfoModel.CurrentUser.LoginTime;
+            toolTime.Text = "鐧诲綍鏃堕棿" + LoginInfoModel.CurrentUser.LoginTime;
             var _obj = new
             {
                 userGuid = LoginInfoModel.CurrentUser.LoginUserGuid,
@@ -34,7 +34,7 @@
             string strJson = "";
             try
             {
-                strJson = UtilityHelper.HttpPost("", "User/GetUserInfo", JsonConvert.SerializeObject(_obj));
+                strJson = UtilityHelper.HttpPost("", "User/GetUserLoginInfo", JsonConvert.SerializeObject(_obj));
                 JObject _job = JObject.Parse(strJson);
                 string rtnCode = _job["rtnCode"].ToString();
                 string rtnMsg = _job["rtnMsg"].ToString();
@@ -51,7 +51,7 @@
                 foreach (DataRow _dy in drGrp)
                 {
                     AccordionControlElement _grp = this.acrd.AddGroup();
-                    _grp.ImageOptions.Image = UtilityHelper.GetImgFromResource(_dy["icon"].ToString(),1);
+                    _grp.ImageOptions.Image = UtilityHelper.GetImgFromResource(_dy["icon"].ToString(), 1);
                     _grp.Name = _dy["guid"].ToString();
                     _grp.Style = DevExpress.XtraBars.Navigation.ElementStyle.Group;
                     _grp.Text = _dy["name"].ToString();
@@ -61,7 +61,7 @@
                     foreach (DataRow _dy2 in drItem)
                     {
                         AccordionControlElement _itm = this.acrd.AddItem();
-                        _itm.ImageOptions.Image = UtilityHelper.GetImgFromResource(_dy2["icon"].ToString(),2);
+                        _itm.ImageOptions.Image = UtilityHelper.GetImgFromResource(_dy2["icon"].ToString(), 2);
                         _itm.Name = _dy2["guid"].ToString();
                         _itm.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item;
                         _itm.Text = _dy2["name"].ToString();
@@ -85,7 +85,7 @@
             string tabPageName = _acd.Name + "_page";
             string tabText = _acd.Text;
             string newFormName = _acd.Tag.ToString();
-            Image imgIcon= _acd.Image;
+            Image imgIcon = _acd.Image;
             AddTabpage(tab, tabPageName, tabText, newFormName, imgIcon);
         }
 
@@ -96,7 +96,7 @@
         /// <param name="tabPageName">褰撴湡閫夐」鍗¢〉name鍚嶇О</param>
         /// <param name="tabText">褰撳墠閫夐」鍗¢〉Text鏍囬</param>
         /// <param name="newFormName">褰撳墠閫夐」鍗′腑鐨勬柊绐椾綋</param>
-        public void AddTabpage(XtraTabControl tabControl, string tabPageName, string tabText, string newFormName,Image imgIcon)
+        public void AddTabpage(XtraTabControl tabControl, string tabPageName, string tabText, string newFormName, Image imgIcon)
         {
             if (IsTabpageExsit(tabControl, tabPageName))
             {
@@ -105,9 +105,10 @@
             XtraTabPage newPage = new XtraTabPage();
             newPage.Name = tabPageName;
             newPage.Text = tabText;
-            newPage.Tooltip = (tabText + ":" + tabPageName);
+            newPage.Tooltip = (tabText);
             newPage.ImageOptions.Image = imgIcon;
-            if (AddNewForm(newFormName) != null) {
+            if (AddNewForm(newFormName) != null)
+            {
                 newPage.Controls.Add(AddNewForm(newFormName));
                 tabControl.TabPages.Add(newPage);
                 TabPageDic.Add(tabPageName, newPage);
@@ -125,10 +126,12 @@
         {
             DevExpress.XtraTab.ViewInfo.ClosePageButtonEventArgs args = (DevExpress.XtraTab.ViewInfo.ClosePageButtonEventArgs)e;
             string name = args.Page.Tooltip;
+            MessageBox.Show(name);
             foreach (XtraTabPage item in tabControl.TabPages)
             {
                 if (item.Name == name)
                 {
+                    MessageBox.Show(item.Name);
                     tabControl.TabPages.Remove(item);
                     item.Dispose();
                     TabPageDic.Remove(name);
@@ -170,7 +173,6 @@
             }
             newForm.FormBorderStyle = FormBorderStyle.None;
             newForm.TopLevel = false;
-            //newForm.Parent = ((XtraTabControl)sender).SelectedTabPage;
             newForm.ControlBox = false;
             newForm.Dock = DockStyle.Fill;
             newForm.Visible = true;
diff --git a/DevApp/Gs.DevApp/Gs.DevApp.csproj b/DevApp/Gs.DevApp/Gs.DevApp.csproj
index e88da5f..71af88c 100644
--- a/DevApp/Gs.DevApp/Gs.DevApp.csproj
+++ b/DevApp/Gs.DevApp/Gs.DevApp.csproj
@@ -39,7 +39,9 @@
     <Reference Include="DevExpress.XtraBars.v19.2, Version=19.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
     <Reference Include="DevExpress.XtraEditors.v19.2" />
     <Reference Include="DevExpress.Printing.v19.2.Core" />
+    <Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
     <Reference Include="DevExpress.XtraLayout.v19.2, Version=19.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference Include="DevExpress.XtraPrinting.v19.2, Version=19.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
     <Reference Include="DevExpress.XtraTreeList.v19.2, Version=19.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
     <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
       <HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
@@ -86,25 +88,43 @@
     <Compile Include="DevFrm\User\SysMenuAdd.Designer.cs">
       <DependentUpon>SysMenuAdd.cs</DependentUpon>
     </Compile>
+    <Compile Include="DevFrm\User\User.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="DevFrm\User\User.Designer.cs">
+      <DependentUpon>User.cs</DependentUpon>
+    </Compile>
+    <Compile Include="DevFrm\User\UserAdd.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="DevFrm\User\UserAdd.Designer.cs">
+      <DependentUpon>UserAdd.cs</DependentUpon>
+    </Compile>
     <Compile Include="Models\LoginInfoModel.cs" />
     <Compile Include="Models\PageQueryModel.cs" />
     <Compile Include="Models\ReturnModel.cs" />
     <Compile Include="Program.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="Properties\Resources.Designer.cs">
+    <Compile Include="Properties\Resources1.Designer.cs">
       <AutoGen>True</AutoGen>
       <DesignTime>True</DesignTime>
       <DependentUpon>Resources.resx</DependentUpon>
     </Compile>
-    <Compile Include="TestForm\test.cs">
+    <Compile Include="TestForm\XtraForm1.cs">
       <SubType>Form</SubType>
     </Compile>
-    <Compile Include="TestForm\test.Designer.cs">
-      <DependentUpon>test.cs</DependentUpon>
+    <Compile Include="TestForm\XtraForm1.Designer.cs">
+      <DependentUpon>XtraForm1.cs</DependentUpon>
     </Compile>
     <Compile Include="ToolBox\LogHelper.cs" />
     <Compile Include="ToolBox\MsgHelper.cs" />
     <Compile Include="ToolBox\UtilityHelper.cs" />
+    <Compile Include="UserControl\PageBar.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="UserControl\PageBar.Designer.cs">
+      <DependentUpon>PageBar.cs</DependentUpon>
+    </Compile>
     <Compile Include="UserControl\ShowDialogForm.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -132,12 +152,21 @@
     <EmbeddedResource Include="DevFrm\User\SysMenuAdd.resx">
       <DependentUpon>SysMenuAdd.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="DevFrm\User\User.resx">
+      <DependentUpon>User.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="DevFrm\User\UserAdd.resx">
+      <DependentUpon>UserAdd.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
-      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+      <LastGenOutput>Resources1.Designer.cs</LastGenOutput>
     </EmbeddedResource>
-    <EmbeddedResource Include="TestForm\test.resx">
-      <DependentUpon>test.cs</DependentUpon>
+    <EmbeddedResource Include="TestForm\XtraForm1.resx">
+      <DependentUpon>XtraForm1.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="UserControl\PageBar.resx">
+      <DependentUpon>PageBar.cs</DependentUpon>
     </EmbeddedResource>
     <EmbeddedResource Include="UserControl\ShowDialogForm.resx">
       <DependentUpon>ShowDialogForm.cs</DependentUpon>
@@ -186,6 +215,18 @@
     <None Include="Resources\edit_32x32.png" />
     <None Include="Resources\checkbox2_32x321.png" />
     <None Include="Resources\reviewingpane_32x32.png" />
+    <None Include="Resources\first_32x32.png" />
+    <None Include="Resources\first_32x321.png" />
+    <None Include="Resources\first_16x16.png" />
+    <None Include="Resources\doubleprev_16x16.png" />
+    <None Include="Resources\doublenext_16x16.png" />
+    <None Include="Resources\last_16x16.png" />
+    <None Include="Resources\login_bg2.png" />
+    <None Include="Resources\login_bg1.png" />
+    <None Include="Resources\login_bg222.png" />
+    <None Include="Resources\login_bg6.png" />
+    <None Include="Resources\publicfix_32x32.png" />
+    <None Include="Resources\groupbyresource_32x32.png" />
     <Content Include="Resources\user_16x16.png" />
   </ItemGroup>
   <ItemGroup />
diff --git a/DevApp/Gs.DevApp/Program.cs b/DevApp/Gs.DevApp/Program.cs
index 1b6c72d..31e997f 100644
--- a/DevApp/Gs.DevApp/Program.cs
+++ b/DevApp/Gs.DevApp/Program.cs
@@ -18,6 +18,7 @@
         {
             Application.EnableVisualStyles();
             Application.SetCompatibleTextRenderingDefault(false);
+            // Application.Run(new Gs.DevApp.TestForm.test());
             DevFrm.FrmLogin fmLogin = new DevFrm.FrmLogin();
             fmLogin.ShowDialog();
             if (fmLogin.DialogResult == DialogResult.OK)
diff --git a/DevApp/Gs.DevApp/Properties/Resources.resx b/DevApp/Gs.DevApp/Properties/Resources.resx
index 07ef021..8b33e4a 100644
--- a/DevApp/Gs.DevApp/Properties/Resources.resx
+++ b/DevApp/Gs.DevApp/Properties/Resources.resx
@@ -136,6 +136,12 @@
   <data name="3dcylinder_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\3dcylinder_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="login_bg2" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\login_bg2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="last_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\last_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="area3d_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\area3d_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -148,11 +154,20 @@
   <data name="usergroup_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\usergroup_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="publicfix_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\publicfix_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="task_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\task_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="3dcolumn_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\3dcolumn_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="3dcolumn_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\3dcolumn_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="login_bg222" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\login_bg222.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="dropandhighlowlines_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\dropandhighlowlines_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -166,8 +181,8 @@
   <data name="filledradarwithoutmarkers_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\filledradarwithoutmarkers_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="converttorange_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\converttorange_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="reviewingpane_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\reviewingpane_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="apply_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\apply_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -184,6 +199,12 @@
   <data name="show_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\show_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="listmultilevel_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\listmultilevel_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doublenext_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\doublenext_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="trackingchanges_trackchanges_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\trackingchanges_trackchanges_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -198,6 +219,9 @@
   </data>
   <data name="mapit_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\mapit_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="show_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\show_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="editingfillleft_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\editingfillleft_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -220,6 +244,9 @@
   <data name="trackingchanges_trackchanges_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\trackingchanges_trackchanges_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="login_bg6" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\login_bg6.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="exportfile_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\exportfile_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -229,11 +256,14 @@
   <data name="convert_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\convert_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="show_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\show_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="first_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\first_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="removegroupfooter_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\removegroupfooter_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doubleprev_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\doubleprev_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="forcetesting_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\forcetesting_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -244,19 +274,25 @@
   <data name="dropandhighlowlines_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\dropandhighlowlines_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="first_32x321" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\first_32x321.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="checkbox2_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\checkbox2_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="3dcolumn_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\3dcolumn_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="first_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\first_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="converttorange_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\converttorange_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
   <data name="knowledgebasearticle_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\knowledgebasearticle_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="listmultilevel_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\listmultilevel_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="login_bg1" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\login_bg1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="reviewingpane_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\reviewingpane_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  <data name="groupbyresource_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\groupbyresource_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
 </root>
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/Properties/Resources.Designer.cs b/DevApp/Gs.DevApp/Properties/Resources1.Designer.cs
similarity index 82%
rename from DevApp/Gs.DevApp/Properties/Resources.Designer.cs
rename to DevApp/Gs.DevApp/Properties/Resources1.Designer.cs
index d2507dc..1a20454 100644
--- a/DevApp/Gs.DevApp/Properties/Resources.Designer.cs
+++ b/DevApp/Gs.DevApp/Properties/Resources1.Designer.cs
@@ -223,6 +223,26 @@
         /// <summary>
         ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
         /// </summary>
+        internal static System.Drawing.Bitmap doublenext_16x16 {
+            get {
+                object obj = ResourceManager.GetObject("doublenext_16x16", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap doubleprev_16x16 {
+            get {
+                object obj = ResourceManager.GetObject("doubleprev_16x16", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
         internal static System.Drawing.Bitmap download_32x32 {
             get {
                 object obj = ResourceManager.GetObject("download_32x32", resourceCulture);
@@ -303,6 +323,36 @@
         /// <summary>
         ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
         /// </summary>
+        internal static System.Drawing.Bitmap first_16x16 {
+            get {
+                object obj = ResourceManager.GetObject("first_16x16", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap first_32x32 {
+            get {
+                object obj = ResourceManager.GetObject("first_32x32", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap first_32x321 {
+            get {
+                object obj = ResourceManager.GetObject("first_32x321", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
         internal static System.Drawing.Bitmap forcetesting_16x16 {
             get {
                 object obj = ResourceManager.GetObject("forcetesting_16x16", resourceCulture);
@@ -333,9 +383,29 @@
         /// <summary>
         ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
         /// </summary>
+        internal static System.Drawing.Bitmap groupbyresource_32x32 {
+            get {
+                object obj = ResourceManager.GetObject("groupbyresource_32x32", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
         internal static System.Drawing.Bitmap knowledgebasearticle_16x16 {
             get {
                 object obj = ResourceManager.GetObject("knowledgebasearticle_16x16", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap last_16x16 {
+            get {
+                object obj = ResourceManager.GetObject("last_16x16", resourceCulture);
                 return ((System.Drawing.Bitmap)(obj));
             }
         }
@@ -373,6 +443,46 @@
         /// <summary>
         ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
         /// </summary>
+        internal static System.Drawing.Bitmap login_bg1 {
+            get {
+                object obj = ResourceManager.GetObject("login_bg1", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap login_bg2 {
+            get {
+                object obj = ResourceManager.GetObject("login_bg2", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap login_bg222 {
+            get {
+                object obj = ResourceManager.GetObject("login_bg222", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
+        internal static System.Drawing.Bitmap login_bg6 {
+            get {
+                object obj = ResourceManager.GetObject("login_bg6", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
         internal static System.Drawing.Bitmap mapit_16x16 {
             get {
                 object obj = ResourceManager.GetObject("mapit_16x16", resourceCulture);
@@ -383,6 +493,16 @@
         /// <summary>
         ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
         /// </summary>
+        internal static System.Drawing.Bitmap publicfix_32x32 {
+            get {
+                object obj = ResourceManager.GetObject("publicfix_32x32", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆�
+        /// </summary>
         internal static System.Drawing.Bitmap removegroupfooter_16x16 {
             get {
                 object obj = ResourceManager.GetObject("removegroupfooter_16x16", resourceCulture);
diff --git a/DevApp/Gs.DevApp/Resources/doublenext_16x16.png b/DevApp/Gs.DevApp/Resources/doublenext_16x16.png
new file mode 100644
index 0000000..f00280e
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/doublenext_16x16.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/doubleprev_16x16.png b/DevApp/Gs.DevApp/Resources/doubleprev_16x16.png
new file mode 100644
index 0000000..5a5cba9
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/doubleprev_16x16.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/edit_32x32.png b/DevApp/Gs.DevApp/Resources/edit_32x32.png
new file mode 100644
index 0000000..52e04fa
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/edit_32x32.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/first_16x16.png b/DevApp/Gs.DevApp/Resources/first_16x16.png
new file mode 100644
index 0000000..24f8269
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/first_16x16.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/first_32x32.png b/DevApp/Gs.DevApp/Resources/first_32x32.png
new file mode 100644
index 0000000..69ef690
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/first_32x32.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/first_32x321.png b/DevApp/Gs.DevApp/Resources/first_32x321.png
new file mode 100644
index 0000000..f522ac9
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/first_32x321.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/knowledgebasearticle_16x16.png b/DevApp/Gs.DevApp/Resources/knowledgebasearticle_16x16.png
new file mode 100644
index 0000000..519c5d2
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/knowledgebasearticle_16x16.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/last_16x16.png b/DevApp/Gs.DevApp/Resources/last_16x16.png
new file mode 100644
index 0000000..09f77d6
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/last_16x16.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/login_bg6.png b/DevApp/Gs.DevApp/Resources/login_bg6.png
new file mode 100644
index 0000000..b409892
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/login_bg6.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/Resources/mapit_16x16.png b/DevApp/Gs.DevApp/Resources/mapit_16x16.png
new file mode 100644
index 0000000..383d8d5
--- /dev/null
+++ b/DevApp/Gs.DevApp/Resources/mapit_16x16.png
Binary files differ
diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 0274d05..f0fb38a 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -13,6 +13,7 @@
 using System.Drawing;
 using Newtonsoft.Json;
 using Gs.DevApp.Models;
+using System.Windows.Forms;
 
 namespace Gs.DevApp.ToolBox
 {
@@ -150,5 +151,15 @@
             rto.rtnData = json["rtnData"];
             return rto;
         }
+
+        public static float GetFontSize =10;
+        public static void SetFont(Control control) {
+            float size = GetFontSize;
+            foreach (Control childControl in control.Controls)
+            {
+                childControl.Font = new Font(childControl.Font.FontFamily, size, childControl.Font.Style);
+                SetFont(childControl);
+            }
+        }
     }
 }
diff --git a/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs b/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs
index 110a51d..aa7e283 100644
--- a/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs
+++ b/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs
@@ -26,6 +26,11 @@
         /// </summary>
         public event EventHandler btnLoadClick;
 
+        /// <summary>
+        /// 淇濆瓨
+        /// </summary>
+        public event EventHandler btnSaveClick;
+
 
         public ToolBarMenu()
         {
@@ -34,6 +39,15 @@
             this.btnDel.ItemClick += BtnDel_ItemClick;
             this.btnEdit.ItemClick += BtnEdit_ItemClick;
             this.btnLoad.ItemClick += BtnLoad_ItemClick;
+            this.btnSave.ItemClick += BtnSave_ItemClick;
+        }
+
+        private void BtnSave_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            if (btnSaveClick != null)
+            {
+                btnSaveClick(this, e);
+            }
         }
 
         private void BtnLoad_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)

--
Gitblit v1.9.3