From 15bc95cc3a5e67d8094ef11c39b5bb31a8638d3c Mon Sep 17 00:00:00 2001 From: lg <999544862qq.com> Date: 星期五, 30 八月 2024 13:24:36 +0800 Subject: [PATCH] 图片 --- DevApp/Gs.DevApp/DevFrm/FrmMain.cs | 164 +++++++++++++++++++++++++++++++++++------------------- 1 files changed, 106 insertions(+), 58 deletions(-) diff --git a/DevApp/Gs.DevApp/DevFrm/FrmMain.cs b/DevApp/Gs.DevApp/DevFrm/FrmMain.cs index 057f359..56d4fd0 100644 --- a/DevApp/Gs.DevApp/DevFrm/FrmMain.cs +++ b/DevApp/Gs.DevApp/DevFrm/FrmMain.cs @@ -1,65 +1,97 @@ -锘縰sing DevExpress.XtraBars; -using DevExpress.XtraBars.Navigation; +锘縰sing DevExpress.XtraBars.Navigation; using DevExpress.XtraTab; -using GsDxApp.Properties; using System; using System.Collections.Generic; -using System.ComponentModel; using System.Data; using System.Drawing; -using System.IO; -using System.Linq; using System.Reflection; -using System.Resources; -using System.Text; using System.Windows.Forms; using Gs.DevApp.ToolBox; +using Newtonsoft.Json; +using Gs.DevApp.Models; +using Newtonsoft.Json.Linq; namespace Gs.DevApp.DevFrm { public partial class FrmMain : DevExpress.XtraBars.FluentDesignSystem.FluentDesignForm { private static Dictionary<string, XtraTabPage> TabPageDic = new Dictionary<string, XtraTabPage>(); - //private StatusStrip statusStrip; - //private ToolStripStatusLabel statusLabel; public FrmMain() { InitializeComponent(); - getInit(); + this.Text = System.Configuration.ConfigurationSettings.AppSettings.Get("ProductName").ToString(); + tab.CloseButtonClick += Tab_CloseButtonClick; + getTree(); } - private void getInit() + private void Tab_CloseButtonClick(object sender, EventArgs e) { - string filePath = @"D:\GsMes\GsDXApp\GsDxApp\bin\Debug\menu.txt"; - string _strJson = File.ReadAllText(filePath); + RemoveTabPage(tab,e); + } + + private void getTree() + { + toolTime.Text = "鐧诲綍鏃堕棿" + LoginInfoModel.CurrentUser.LoginTime; var _obj = new { - rtnCode = 1, - rtnData = new { list = new[] { new { guid = "", name = "", pah= "", ico = "", list = new[] { new { guid = "", name = "", pah= "", ico = "" } } } } }, - rtnMsg = "" + userGuid = LoginInfoModel.CurrentUser.LoginUserGuid, + orgGuid = LoginInfoModel.CurrentUser.LoginOrgGuid, }; - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain)); - _obj = Newtonsoft.Json.JsonConvert.DeserializeAnonymousType(_strJson, _obj); - foreach (dynamic _dy in _obj.rtnData.list) + string strJson = ""; + try { - AccordionControlElement _grp = this.acrd.AddGroup(); - _grp.ImageOptions.Image = Utility.GetImgFromResource(_dy.ico); - _grp.Name = Guid.NewGuid().ToString(); - _grp.Style = DevExpress.XtraBars.Navigation.ElementStyle.Group; - _grp.Text = _dy.name; - _grp.Click += _grp_Click; - foreach (dynamic _dy2 in _dy.list) + strJson = UtilityHelper.HttpPost("", "User/GetUserLoginInfo", JsonConvert.SerializeObject(_obj)); + JObject _job = JObject.Parse(strJson); + string rtnCode = _job["rtnCode"].ToString(); + string rtnMsg = _job["rtnMsg"].ToString(); + barMsg.Caption = rtnMsg; + JArray array = new JArray(); + var d = _job["rtnData"]["list"]; + foreach (var a in d) { - AccordionControlElement _itm = this.acrd.AddItem(); - _itm.Name = Guid.NewGuid().ToString(); - _itm.ImageOptions.Image =Utility.GetImgFromResource(_dy2.ico); - _itm.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item; - _itm.Text = _dy2.name; - _itm.Appearance.Normal.Font = new System.Drawing.Font("Tahoma", 10F); - _itm.Tag = _dy2.pah; - _itm.Click += _grp_Click; - _grp.Elements.Add(_itm); - }; + array.Add(a); + } + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain)); + DataTable dt = JsonConvert.DeserializeObject<DataTable>(array.ToString()); + DataRow[] drGrp = dt.Select("upGuid is null"); + int idx = 0; + foreach (DataRow _dy in drGrp) + { + AccordionControlElement _grp = this.acrd.AddGroup(); + _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(); + _grp.Tag = _dy["formPath"].ToString();//瀛樿矾寰勶紝绫诲悕 + _grp.Click += _grp_Click; + DataRow[] drItem = dt.Select("upGuid='" + _dy["guid"].ToString() + "'"); + foreach (DataRow _dy2 in drItem) + { + AccordionControlElement _itm = this.acrd.AddItem(); + _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(); + _itm.Appearance.Normal.Font = new System.Drawing.Font("Tahoma", 10F); + _itm.Tag = _dy2["formPath"].ToString();//瀛樿矾寰勶紝绫诲悕 + _itm.Click += _grp_Click; + _grp.Elements.Add(_itm); + // + if (idx == 0) { + string tabPageName = _itm.Name + "_page"; + string tabText = _itm.Text;//褰撳墠閫夐」鍗¢〉Text鏍囬 + string newFormName = _itm.Tag.ToString();//瀛樿矾寰勶紝绫诲悕 + Image imgIcon = _itm.Image; + AddTabpage(tab, tabPageName, tabText, newFormName, imgIcon); + } + idx++; + // + }; + } + } + catch (Exception ex) + { + ToolBox.MsgHelper.ShowError("鎻愮ず锛�" + ex.Message); } } @@ -68,10 +100,10 @@ AccordionControlElement _acd = (AccordionControlElement)sender; if (_acd.Elements.Count > 0) return; string tabPageName = _acd.Name + "_page"; - string tabText = _acd.Text; - //string newFormName = "GsDxApp.test.ToolbarForm1"; - string newFormName = _acd.Tag.ToString(); - AddTabpage(tab, tabPageName, tabText, newFormName); + string tabText = _acd.Text;//褰撳墠閫夐」鍗¢〉Text鏍囬 + string newFormName = _acd.Tag.ToString();//瀛樿矾寰勶紝绫诲悕 + Image imgIcon = _acd.Image; + AddTabpage(tab, tabPageName, tabText, newFormName, imgIcon); } /// <summary> @@ -80,8 +112,8 @@ /// <param name="tabControl">閫夐」鍗℃帶浠�</param> /// <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) + /// <param name="newFormName">褰撳墠閫夐」鍗′腑鐨勬柊绐椾綋璺緞锛岀被鍚�</param> + public void AddTabpage(XtraTabControl tabControl, string tabPageName, string tabText, string newFormName, Image imgIcon) { if (IsTabpageExsit(tabControl, tabPageName)) { @@ -90,11 +122,17 @@ XtraTabPage newPage = new XtraTabPage(); newPage.Name = tabPageName; newPage.Text = tabText; - newPage.Tooltip = (tabText + ":" + tabPageName); - newPage.Controls.Add(AddNewForm(newFormName)); - tabControl.TabPages.Add(newPage); - TabPageDic.Add(tabPageName, newPage); - tabControl.SelectedTabPage = newPage; + newPage.Tooltip = newPage.Name; + newPage.Appearance.Header.Font = (tab.Appearance.Font); + newPage.ImageOptions.Image = imgIcon; + Form fm = AddNewForm(newFormName); + if (fm != null) + { + newPage.Controls.Add(fm); + tabControl.TabPages.Add(newPage); + TabPageDic.Add(tabPageName, newPage); + tabControl.SelectedTabPage = newPage; + } } /// <summary> @@ -144,16 +182,26 @@ /// <param name="form">绐椾綋鍚嶇О</param> private Form AddNewForm(string formName) { - Form newForm = (Form)Assembly.GetExecutingAssembly().CreateInstance(formName); - newForm.FormBorderStyle = FormBorderStyle.None; - newForm.TopLevel = false; - //newForm.Parent = ((XtraTabControl)sender).SelectedTabPage; - newForm.ControlBox = false; - newForm.Dock = DockStyle.Fill; - newForm.Visible = true; - return newForm; + try + { + Form newForm = (Form)Assembly.GetExecutingAssembly().CreateInstance(formName); + if (newForm == null) + { + Gs.DevApp.ToolBox.MsgHelper.ShowError("璇锋鏌ユ槸鍚﹀紑閫氫簡璇ユā鍧楋紒"); + return null; + } + newForm.FormBorderStyle = FormBorderStyle.None; + newForm.TopLevel = false; + newForm.ControlBox = false; + newForm.Dock = DockStyle.Fill; + newForm.Visible = true; + return newForm; + } + catch (Exception) + { + Gs.DevApp.ToolBox.MsgHelper.ShowError("璇锋鏌ユ槸鍚﹀紑閫氫簡璇ユā鍧楋紒"); + } + return null; } - - } } -- Gitblit v1.9.3