cdk
2025-12-02 821e74f483c3fddebe42ef30bb06e8fe29b1a5b9
DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -501,6 +501,14 @@
                            txt.IsReadly = isEdt;
                            continue;
                        }
                        //自定义库位
                        if (colType is UcLookKw)
                        {
                            var txt = colType as UcLookKw;
                            txt.SetIdOrCode(strVal);
                            txt.IsReadly = isEdt;
                            continue;
                        }
                        //自定义供应商
                        if (colType is UcLookSupplier)
                        {
@@ -806,6 +814,14 @@
                    txt.IsReadly = isEdt;
                    continue;
                }
                //自定义库位
                if (ctrl is UcLookKw)
                {
                    var txt = ctrl as UcLookKw;
                    txt.SetIdOrCode("-1");
                    txt.IsReadly = isEdt;
                    continue;
                }
                //自定义供应商
                if (ctrl is UcLookSupplier)
                {
@@ -1062,6 +1078,13 @@
                if (ctrl is UcLookCk)
                {
                    var txt = ctrl as UcLookCk;
                    txt.IsReadly = isEdt;
                    continue;
                }
                //自定义库位
                if (ctrl is UcLookKw)
                {
                    var txt = ctrl as UcLookKw;
                    txt.IsReadly = isEdt;
                    continue;
                }
@@ -1725,25 +1748,26 @@
        /// <param name="action2">委托2</param>
        public static void SetGridViewParameter(GridView gridView1, PictureBox picCheckBox = null, Form fm = null, string fileName = "checkStatus", string icoName = "", DelegateGetModel action = null, DevExpress.Utils.ToolTipController tips = null, bool isPostSearch = true, DelegateGetModel action2 = 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]);
                            }
                        }
                    }
                }
            };
            //2025-11-06 cnf 引入中文插件注
            /* 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.ColumnAutoWidth = false;//自动调整列宽
            if (isPostSearch == true)
            {
@@ -1845,6 +1869,30 @@
                    action2(_guid);
                };
            }
            gridView1.RowCellStyle += (s, e) =>
            {
                GridView view = s as GridView;
                if (view != null && e.Column != null && e.CellValue != null)
                {
                    if (e.Column.FieldName.EndsWith("Color"))
                    {
                        int rowHandle = e.RowHandle;
                        if (rowHandle >= 0)
                        {
                            DataRow row = gridView1.GetDataRow(e.RowHandle);
                            string _bgColor = row[e.Column.FieldName + "Rgb"].ToString();
                            if (!string.IsNullOrEmpty(_bgColor))
                            {
                                Color bgColor = ColorTranslator.FromHtml(_bgColor);
                                e.Appearance.BackColor = bgColor;
                                //e.Appearance.BackColor2 = Color.LightSkyBlue;
                                //e.Appearance.ForeColor = ColorTranslator.FromHtml("#ffffff") ;
                            }
                        }
                    }
                }
            };
            gridView1.RowStyle += (s, e) =>
            {
                //默认选中行不变色
@@ -2008,27 +2056,28 @@
        /// <param name="icoName"></param>
        public static void SetGridViewParameterMx(GridView gridView1, DevExpress.Utils.ToolTipController tips = 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;
            //2025-11-06 cnf 注
            /* 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)
@@ -2119,6 +2168,32 @@
        }
        #region GridView汇总配置工具方法
        /// <summary>
        /// 2025-08-14 kyy 快速配置GridView底部汇总(启用汇总行+设置列求和汇总)
        /// </summary>
        /// <param name="gridView">目标GridView控件</param>
        /// <param name="summaryColumns">需要进行求和汇总的列名数组</param>
        public static void SetupGridSummary(DevExpress.XtraGrid.Views.Grid.GridView gridView, params string[] summaryColumns)
        {
            // 启用底部汇总行
            gridView.OptionsView.ShowFooter = true;
            // 为每个指定列设置求和汇总
            foreach (var columnName in summaryColumns)
            {
                // 验证列是否存在(避免异常)
                if (gridView.Columns[columnName] != null)
                {
                    gridView.Columns[columnName].SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum;
                    gridView.Columns[columnName].SummaryItem.DisplayFormat = "合计: {0}";
                }
            }
        }
      #endregion
        /// <summary>
        /// 数据过滤
        /// </summary>