From 3e2c9c862ebc0cd1c99947fb031dc2efdf7980a0 Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期五, 28 二月 2025 17:39:46 +0800
Subject: [PATCH] 布局

---
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs |  118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 117 insertions(+), 1 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 0f3d47a..0d5f043 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -10,6 +10,7 @@
 using System.Net.Http;
 using System.Reflection;
 using System.Resources;
+using System.Runtime.CompilerServices;
 using System.Text;
 using System.Text.RegularExpressions;
 using System.Threading.Tasks;
@@ -1614,7 +1615,7 @@
                             btnChkIco.Tag = "鏈鏍�";
                         }
                         btnChkIco.Anchor = AnchorStyles.Top | AnchorStyles.Right; // 闈犲彸
-                        btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20,25); // 璺濈椤堕儴10鍍忕礌
+                        btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20, 25); // 璺濈椤堕儴10鍍忕礌
                     }
                 }
             }
@@ -1729,6 +1730,28 @@
         /// <param name="action"></param>
         public static void SetGridViewParameter(GridView gridView1, PictureBox picCheckBox = null, Form fm = null, string fileName = "checkStatus", string icoName = "", DelegateGetModel action = null)
         {
+            gridView1.PopupMenuShowing += (s, e) =>
+            {
+                if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
+                {
+                    GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
+                    if (menu != null)
+                    {
+                        string[] ary = { "Column Chooser", "Hide This Column", "Clear All Sorting", "Clear Sorting", "Sort Descending", "Sort Ascending", "Best Fit (all columns)" };
+                        for (int i = menu.Items.Count - 1; i >= 0; i--)
+                        {
+                            string _caption = menu.Items[i].Caption;
+                            if (!ary.Contains(_caption))
+                            {
+                                menu.Items.Remove(menu.Items[i]);
+                            }
+                        }
+                    }
+                }
+            };
+            gridView1.OptionsView.ShowGroupPanel = false;
+            gridView1.OptionsCustomization.AllowGroup = false;
+
             gridView1.Appearance.HeaderPanel.ForeColor = DevExpress.LookAndFeel.DXSkinColors.ForeColors.ControlText;
             gridView1.OptionsView.ColumnAutoWidth = false;//鑷姩璋冩暣鍒楀
             foreach (GridColumn column in gridView1.Columns)
@@ -1889,6 +1912,28 @@
         /// <param name="icoName"></param>
         public static void SetGridViewParameterMx(GridView gridView1)
         {
+            gridView1.PopupMenuShowing += (s, e) =>
+            {
+                if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
+                {
+                    GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
+                    if (menu != null)
+                    {
+                        string[] ary = { "Column Chooser", "Hide This Column", "Clear All Sorting", "Clear Sorting", "Sort Descending", "Sort Ascending", "Best Fit (all columns)" };
+                        for (int i = menu.Items.Count - 1; i >= 0; i--)
+                        {
+                            string _caption = menu.Items[i].Caption;
+                            if (!ary.Contains(_caption))
+                            {
+                                menu.Items.Remove(menu.Items[i]);
+                            }
+                        }
+                    }
+                }
+            };
+            gridView1.OptionsView.ShowGroupPanel = false;
+            gridView1.OptionsCustomization.AllowGroup = false;
+
             // gridView1.OptionsView.Alignment = DataGridViewContentAlignment.MiddleLeft;
             foreach (GridColumn column in gridView1.Columns)
             {
@@ -2009,8 +2054,79 @@
                             column.Visible = bool.Parse(controlVisible);
                     }
                 }
+               
             }
         }
+
+        public static void getXmlConfig(string namespaceFullName, List<DevExpress.XtraGrid.Views.Grid.GridView> gvList)
+        {
+            // gridView1.ShowCustomization();
+            // gridView1.OptionsMenu.EnableColumnMenu = false;
+            JArray array = new JArray();
+            var _obj = new
+            {
+                formPath = namespaceFullName,
+            };
+            try
+            {
+                string strJson = UtilityHelper.HttpPost("", "Fm/GetModel", JsonConvert.SerializeObject(_obj));
+                ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson);
+                if (_rtn.rtnCode > 0)
+                {
+                    JObject _job = JObject.Parse(strJson);
+                    foreach (var a in _job["rtnData"]["list"])
+                    {
+                        //string _id = a["controlId"].ToString();
+                        //string _controlType = a["controlType"].ToString();
+                        //string _controlXml = a["controlXml"].ToString();
+                        //string _splitterPosition = a["splitterPosition"].ToString();
+                        array.Add(a);
+                    }
+                    foreach (GridView gridView1 in gvList)
+                    {
+                        gridView1.PopupMenuShowing += (s, e) =>
+                        {
+                            if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
+                            {
+                                GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
+                                if (menu != null)
+                                {
+                                    string[] ary = { "Column Chooser", "Hide This Column", "Clear All Sorting", "Clear Sorting", "Sort Descending", "Sort Ascending", "Best Fit (all columns)" };
+                                    for (int i = menu.Items.Count - 1; i >= 0; i--)
+                                    {
+                                        string _caption = menu.Items[i].Caption;
+                                        if (!ary.Contains(_caption))
+                                        {
+                                            menu.Items.Remove(menu.Items[i]);
+                                        }
+                                    }
+                                }
+                            }
+                        };
+                        gridView1.OptionsView.ShowGroupPanel = false;
+                        gridView1.OptionsCustomization.AllowGroup = false;
+                        JToken john = array.FirstOrDefault(t => t["controlId"].ToString().ToUpper() == gridView1.Name.ToString().Trim().ToUpper());
+                        if (john != null)
+                        {
+                            string controlId = john["controlId"].ToString();
+                            string controlXml = john["controlXml"].ToString();
+                            byte[] byteArray = Encoding.UTF8.GetBytes(controlXml);
+                            using (var stream = new MemoryStream(byteArray))
+                            {
+                                gridView1.RestoreLayoutFromStream(stream);
+                            }
+                        }
+                    }
+                }
+                else
+                    ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg);
+            }
+            catch (Exception ex)
+            {
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+
+        }
     }
 
     /// <summary>

--
Gitblit v1.9.3