From e9a56abf54b3f8b311f4ea360649c4564974349f Mon Sep 17 00:00:00 2001 From: lu <99954486@qq.com> Date: 星期三, 19 二月 2025 15:24:28 +0800 Subject: [PATCH] 工单 --- DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs | 85 ++++++++++++++++++++++++++---------------- 1 files changed, 53 insertions(+), 32 deletions(-) diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs index 708a1cd..ceaafaf 100644 --- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs +++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs @@ -19,6 +19,7 @@ using DevExpress.XtraEditors.Controls; using DevExpress.XtraGrid; using DevExpress.XtraGrid.Columns; +using DevExpress.XtraGrid.Menu; using DevExpress.XtraGrid.Views.Grid; using DevExpress.XtraTab; using DevExpress.XtraTreeList; @@ -1921,48 +1922,68 @@ public static void getGridViewConfig(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"]) + { + array.Add(a); + } + } + else + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + } + catch (Exception ex) + { + ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } foreach (GridView gridView1 in gvList) { - gridView1.OptionsView.ShowGroupPanel = false; - // gridView1.OptionsMenu.EnableColumnMenu = false; - gridView1.OptionsCustomization.AllowGroup = false; - if (string.IsNullOrEmpty(namespaceFullName)) return; - var _obj = new + gridView1.PopupMenuShowing += (s, e) => { - formPath = namespaceFullName, - }; - try - { - string strJson = UtilityHelper.HttpPost("", "Fm/GetModel", JsonConvert.SerializeObject(_obj)); - ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson); - if (_rtn.rtnCode > 0) + if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column) { - JObject _job = JObject.Parse(strJson); - JArray array = new JArray(); - foreach (var a in _job["rtnData"]["list"]) + GridViewColumnMenu menu = e.Menu as GridViewColumnMenu; + if (menu != null) { - array.Add(a); - } - foreach (GridColumn column in gridView1.Columns) - { - JToken john = array.FirstOrDefault(t => t["controlId"].ToString().ToUpper() == column.Name.ToString().Trim().ToUpper()); - if (john != 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 controlIdx = john["controlIdx"].ToString(); - string controlVisible = john["controlVisible"].ToString(); - if (!string.IsNullOrEmpty(controlIdx)) - column.VisibleIndex = int.Parse(controlIdx); - if (!string.IsNullOrEmpty(controlVisible)) - column.Visible = bool.Parse(controlVisible); + string _caption = menu.Items[i].Caption; + if (!ary.Contains(_caption)) + { + menu.Items.Remove(menu.Items[i]); + } } } } - else - ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); - } - catch (Exception ex) + }; + gridView1.OptionsView.ShowGroupPanel = false; + gridView1.OptionsCustomization.AllowGroup = false; + if (string.IsNullOrEmpty(namespaceFullName)) return; + foreach (GridColumn column in gridView1.Columns) { - ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + JToken john = array.FirstOrDefault(t => t["controlId"].ToString().ToUpper() == column.Name.ToString().Trim().ToUpper()); + if (john != null) + { + string controlIdx = john["controlIdx"].ToString(); + string controlVisible = john["controlVisible"].ToString(); + if (!string.IsNullOrEmpty(controlIdx)) + column.VisibleIndex = int.Parse(controlIdx); + if (!string.IsNullOrEmpty(controlVisible)) + column.Visible = bool.Parse(controlVisible); + } } } } -- Gitblit v1.9.3