| | |
| | | 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; |
| | |
| | | |
| | | 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); |
| | | } |
| | | } |
| | | } |
| | | } |