From 7e032e5eafc16d982d09275d3692b1a2d06875a2 Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期五, 10 一月 2025 11:17:00 +0800
Subject: [PATCH] 细节

---
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs |  620 ++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 492 insertions(+), 128 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index a7fb76b..ce148f8 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -13,8 +13,6 @@
 using System.Text.RegularExpressions;
 using System.Threading.Tasks;
 using System.Windows.Forms;
-using DevExpress.RichEdit.Export;
-using DevExpress.XtraBars.Customization;
 using DevExpress.XtraEditors;
 using DevExpress.XtraEditors.Controls;
 using DevExpress.XtraGrid;
@@ -22,11 +20,11 @@
 using DevExpress.XtraGrid.Views.Grid;
 using DevExpress.XtraTab;
 using DevExpress.XtraTreeList;
-using DevExpress.XtraWaitForm;
 using Gs.DevApp.Entity;
 using Gs.DevApp.UserControl;
 using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
+using UserControls.Data;
 using static System.Windows.Forms.Control;
 
 
@@ -61,50 +59,7 @@
                 }
             }
         }
-        /// <summary>
-        ///     httpPost璁块棶鏈嶅姟
-        /// </summary>
-        /// <param name="url">鏈嶅姟鍦板潃</param>
-        /// <param name="meth">鏂规硶鍚嶇О</param>
-        /// <param name="param">鍙傛暟</param>
-        /// <returns></returns>
-        //public static async Task<string> HttpPostAsync(string url, string meth, string param)
-        //{
-        //    if (string.IsNullOrEmpty(url))
-        //        url = WebApiUrl;
-        //    url += meth;
-        //    var request = (HttpWebRequest)WebRequest.Create(url);
-        //    request.Method = "POST";
-        //    request.ContentType = "application/json";
-        //    request.Headers.Add("token", GetBasicAuthTicket());
-        //    request.Accept = "*/*";
-        //    request.Timeout = 15000;
-        //    request.AllowAutoRedirect = false;
-        //    request.ServicePoint.Expect100Continue = false;
-        //    HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
-        //    request.CachePolicy = noCachePolicy;
-        //    using (Stream requestStream = await request.GetRequestStreamAsync())
-        //    {
-        //        byte[] dataBytes = Encoding.UTF8.GetBytes(param);
-        //        await requestStream.WriteAsync(dataBytes, 0, dataBytes.Length);
-        //    }
 
-        //    using (WebResponse response = await request.GetResponseAsync())
-        //    {
-        //        using (StreamReader reader = new StreamReader(response.GetResponseStream()))
-        //        {
-        //            return await reader.ReadToEndAsync();
-        //        }
-        //    }
-        //}
-
-        /// <summary>
-        ///     httpPost璁块棶鏈嶅姟
-        /// </summary>
-        /// <param name="url">鏈嶅姟鍦板潃</param>
-        /// <param name="meth">鏂规硶鍚嶇О</param>
-        /// <param name="param">鍙傛暟</param>
-        /// <returns></returns>
         public static string HttpPost(string url, string meth, string param)
         {
             string _caption = "鎷煎懡鍔犺浇涓紝璇风◢鍚�...";
@@ -125,10 +80,10 @@
                 request.ContentType = "application/json";
                 request.Headers.Add("token", GetBasicAuthTicket());
                 request.Accept = "*/*";
-                request.Timeout = 15000;
+                request.Timeout = 150000;
                 request.AllowAutoRedirect = false;
                 request.ServicePoint.Expect100Continue = false;
-                wdf.SetCaption(_caption+"锛�10/100锛�" + meth);
+                wdf.SetCaption(_caption + "锛�10/100锛�" + meth);
                 HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
                 request.CachePolicy = noCachePolicy;
                 wdf.SetCaption(_caption + "锛�20/100锛�" + meth);
@@ -314,21 +269,37 @@
         {
             isEdt = !isEdt;
             if (gridViews != null)
+            {
                 foreach (var gv in gridViews)
                 {
                     foreach (GridColumn colmn in gv.Columns)
                     {
+                        colmn.OptionsColumn.AllowEdit = true;
+
+                        if (colmn.Name.ToString().Contains("gvBtnAlawys"))
+                        {
+                            colmn.Visible = true;
+                            colmn.OptionsColumn.ReadOnly = false;
+                        };
                         if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui"))
                         {
-                            //  colmn.Visible = !isEdt;
-                            //  break;
-                            colmn.OptionsColumn.AllowEdit = true;
+                            colmn.Visible = !isEdt;
                         }
                         else
-                            colmn.OptionsColumn.AllowEdit = !isEdt;
+                        {
+                            if (isEdt == false)
+                            {
+                                if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit"))
+                                    colmn.OptionsColumn.ReadOnly = isEdt;
+                                else
+                                    colmn.OptionsColumn.ReadOnly = !isEdt;
+                            }
+                            else
+                                colmn.OptionsColumn.ReadOnly = isEdt;
+                        }
                     }
-                    //gv.OptionsBehavior.Editable = !isEdt;
                 }
+            }
             var _btnAry = controls.Find("btnSelect", false);
             if (_btnAry.Length > 0)
             {
@@ -359,7 +330,6 @@
                             txt.ReadOnly = isEdt;
                             continue;
                         }
-
                         if (colType is ImageComboBoxEdit)
                         {
                             var txt = colType as ImageComboBoxEdit;
@@ -374,32 +344,25 @@
                             }
                             continue;
                         }
-
                         if (colType is ComboBoxEdit)
                         {
                             var txt = colType as ComboBoxEdit;
                             if (txt.Properties.TextEditStyle ==
                                 TextEditStyles.DisableTextEditor)
-                                txt.SelectedIndex = int.Parse(strVal);
+                                try
+                                {
+                                    txt.SelectedIndex = int.Parse(strVal);
+                                }
+                                catch (Exception)
+                                {
+
+                                    txt.Text = strVal;
+                                }
                             else
                                 txt.Text = strVal;
                             txt.ReadOnly = isEdt;
                             continue;
                         }
-
-                        //涓嬫媺
-                        if (colType is ComboBoxEdit)
-                        {
-                            var txt = colType as ComboBoxEdit;
-                            if (txt.Properties.TextEditStyle ==
-                                TextEditStyles.DisableTextEditor)
-                                txt.SelectedIndex = int.Parse(strVal);
-                            else
-                                txt.Text = strVal;
-                            txt.ReadOnly = isEdt;
-                            continue;
-                        }
-
                         //鑷畾涔変笅鎷�
                         if (colType is UcComBox)
                         {
@@ -408,14 +371,18 @@
                             txt.Enabled = !isEdt;
                             continue;
                         }
-
                         //鏂囨湰
                         if (colType is TextEdit)
                         {
                             var txt = colType as TextEdit;
                             if (txt != null)
                                 txt.Text = strVal;
-                            txt.ReadOnly = isEdt;
+                            if (_isRead(txt.Tag))
+                            {
+                                txt.ReadOnly = true;
+                            }
+                            else
+                                txt.ReadOnly = isEdt;
                             continue;
                         }
                         if (colType is MemoEdit)
@@ -423,10 +390,14 @@
                             var txt = colType as MemoEdit;
                             if (txt != null)
                                 txt.Text = strVal;
-                            txt.ReadOnly = isEdt;
+                            if (_isRead(txt.Tag))
+                            {
+                                txt.ReadOnly = true;
+                            }
+                            else
+                                txt.ReadOnly = isEdt;
                             continue;
                         }
-
                         //鏁板瓧鍗�
                         if (colType is NumericUpDown)
                         {
@@ -436,7 +407,6 @@
                             txt.ReadOnly = isEdt;
                             continue;
                         }
-
                         //鍗曢��
                         if (colType is CheckEdit)
                         {
@@ -461,24 +431,30 @@
                             txt.ReadOnly = isEdt;
                             continue;
                         }
-
                         //鍗曢��
                         if (colType is CheckBox)
                         {
                             var txt = colType as CheckBox;
                             if (txt != null)
-                                txt.Checked = bool.Parse(strVal);
+                                switch (strVal)
+                                {
+                                    case "True":
+                                        txt.Checked = true;
+                                        break;
+                                    case "1":
+                                        txt.Checked = true;
+                                        break;
+                                    case "False":
+                                        txt.Checked = false;
+                                        break;
+                                    default:
+                                        txt.Checked = false;
+                                        break;
+                                }
                             txt.Enabled = !isEdt;
                             continue;
                         }
-                        if (colType is CheckEdit)
-                        {
-                            var txt = colType as CheckEdit;
-                            if (txt != null)
-                                txt.Checked = bool.Parse(strVal);
-                            txt.ReadOnly = isEdt;
-                            continue;
-                        }
+
                         //鏃堕棿
                         if (colType is DateTimePicker)
                         {
@@ -487,7 +463,6 @@
                             txt.Enabled = !isEdt;
                             continue;
                         }
-
                         //Label
                         if (colType is Label)
                         {
@@ -570,7 +545,6 @@
                                 txt.Enabled = false;
                             continue;
                         }
-
                         //鑷畾瀹㈡埛
                         if (colType is UcLookCustomer)
                         {
@@ -604,7 +578,72 @@
                                 txt.Enabled = false;
                             continue;
                         }
-
+                        //鑷畾鐢ㄦ埛
+                        if (colType is UcLookUser)
+                        {
+                            var txt = colType as UcLookUser;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾鎵撳嵃鏈�
+                        if (colType is UcLookPrint)
+                        {
+                            var txt = colType as UcLookPrint;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾缂洪櫡绫诲埆 
+                        if (colType is UcLookDefectType)
+                        {
+                            var txt = colType as UcLookDefectType;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾閮ㄩ棬
+                        if (colType is UcLookDepartment)
+                        {
+                            var txt = colType as UcLookDepartment;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾daa
+                        if (colType is UcLookDaa)
+                        {
+                            var txt = colType as UcLookDaa;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾濮斿
+                        if (colType is UcLookWwgd)
+                        {
+                            var txt = colType as UcLookWwgd;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
                         if (colType is SimpleButton)
                         {
                             var txt = colType as SimpleButton;
@@ -616,6 +655,18 @@
                 catch (Exception ex)
                 {
                     MessageBox.Show(ex.Message);
+                }
+            }
+
+            foreach (Control ctrl in controls)
+            {
+                if (ctrl is TextEdit)
+                {
+                    var txt = ctrl as TextEdit;
+                    bool _bl = _isRead(txt.Tag, isEdt);
+                    txt.ReadOnly = _bl;
+                    // txt.ReadOnly = isEdt;
+                    continue;
                 }
             }
         }
@@ -631,32 +682,51 @@
         {
             isEdt = !isEdt;
             if (gridViews != null)
+            {
                 foreach (var gv in gridViews)
                 {
                     foreach (GridColumn colmn in gv.Columns)
                     {
+                        colmn.OptionsColumn.AllowEdit = true;
                         if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui"))
                         {
-                            //  colmn.Visible = !isEdt;
-                            //  break;
-                            colmn.OptionsColumn.AllowEdit = true;
+                            colmn.Visible = !isEdt;
                         }
                         else
-                            colmn.OptionsColumn.AllowEdit = !isEdt;
+                        {
+                            if (isEdt == false)
+                            {
+                                if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit"))
+                                    colmn.OptionsColumn.ReadOnly = isEdt;
+                                else
+                                    colmn.OptionsColumn.ReadOnly = !isEdt;
+                            }
+                            else
+                                colmn.OptionsColumn.ReadOnly = isEdt;
+                        }
                     }
-                    //gv.OptionsBehavior.Editable = !isEdt;
                 }
+            }
             foreach (Control ctrl in controls)
             {
                 //澶氳鏂囨湰
                 if (ctrl is MemoEdit)
                 {
                     var txt = ctrl as MemoEdit;
-                    txt.Text = "";
-                    txt.ReadOnly = isEdt;
+                    if (txt.Tag != null && txt.Tag.ToString().Length > 0 && txt.Tag.ToString().StartsWith("moren"))
+                    {
+                        txt.Text = txt.Tag.ToString().Replace("moren.", "");
+                    }
+                    else
+                        txt.Text = "";
+                    if (_isRead(txt.Tag))
+                    {
+                        txt.ReadOnly = true;
+                    }
+                    else
+                        txt.ReadOnly = isEdt;
                     continue;
                 }
-
                 //涓嬫媺
                 if (ctrl is ComboBoxEdit)
                 {
@@ -669,7 +739,6 @@
                     txt.ReadOnly = isEdt;
                     continue;
                 }
-
                 //鑷畾涔夌殑涓嬫媺
                 if (ctrl is UcComBox)
                 {
@@ -678,23 +747,25 @@
                     txt.Enabled = !isEdt;
                     continue;
                 }
-
                 //鏂囨湰
                 if (ctrl is TextEdit)
                 {
                     var txt = ctrl as TextEdit;
-                    txt.Text = "";
-                    txt.ReadOnly = isEdt;
-                    continue;
-                }
-                if (ctrl is MemoEdit)
-                {
-                    var txt = ctrl as MemoEdit;
-                    if (txt != null)
+                    if (txt.Tag != null && txt.Tag.ToString().Length > 0 && txt.Tag.ToString().StartsWith("moren"))
+                    {
+                        txt.Text = txt.Tag.ToString().Replace("moren.", "");
+                    }
+                    else
                         txt.Text = "";
-                    txt.ReadOnly = isEdt;
+                    if (_isRead(txt.Tag))
+                    {
+                        txt.ReadOnly = true;
+                    }
+                    else
+                        txt.ReadOnly = isEdt;
                     continue;
                 }
+
                 //鏃堕棿
                 if (ctrl is DateTimePicker)
                 {
@@ -706,13 +777,14 @@
                 if (ctrl is CheckBox)
                 {
                     var txt = ctrl as CheckBox;
-                    txt.Checked = false;
                     txt.Enabled = !isEdt;
+                    txt.Checked = false;
                 }
                 if (ctrl is CheckEdit)
                 {
                     var txt = ctrl as CheckEdit;
                     txt.ReadOnly = isEdt;
+                    txt.Checked = false;
                     continue;
                 }
 
@@ -788,13 +860,60 @@
                     txt.Enabled = !isEdt;
                     continue;
                 }
+                //鑷畾鐢ㄦ埛
+                if (ctrl is UcLookUser)
+                {
+                    var txt = ctrl as UcLookUser;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾鎵撳嵃鏈�
+                if (ctrl is UcLookPrint)
+                {
+                    var txt = ctrl as UcLookPrint;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾缂洪櫡绫诲埆
+                if (ctrl is UcLookDefectType)
+                {
+                    var txt = ctrl as UcLookDefectType;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾閮ㄩ棬
+                if (ctrl is UcLookDepartment)
+                {
+                    var txt = ctrl as UcLookDepartment;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾daa
+                if (ctrl is UcLookDaa)
+                {
+                    var txt = ctrl as UcLookDaa;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾濮斿
+                if (ctrl is UcLookWwgd)
+                {
+                    var txt = ctrl as UcLookWwgd;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
                 if (ctrl is SimpleButton)
                 {
                     var txt = ctrl as SimpleButton;
                     txt.Enabled = !isEdt;
                     continue;
                 }
-
             }
         }
 
@@ -809,34 +928,49 @@
         {
             isEdt = !isEdt;
             if (gridViews != null)
+            {
                 foreach (var gv in gridViews)
                 {
                     foreach (GridColumn colmn in gv.Columns)
                     {
+                        colmn.OptionsColumn.AllowEdit = true;
                         if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui"))
                         {
-                            //  colmn.Visible = !isEdt;
-                            //  break;
-                            colmn.OptionsColumn.AllowEdit = true;
+                            colmn.Visible = !isEdt;
                         }
                         else
-                            colmn.OptionsColumn.AllowEdit = !isEdt;
+                        {
+                            if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit"))
+                                colmn.OptionsColumn.ReadOnly = isEdt;
+                            else
+                                colmn.OptionsColumn.ReadOnly = isEdt;
+                        }
                     }
-                    //gv.OptionsBehavior.Editable = !isEdt;
                 }
+            }
             foreach (Control ctrl in controls)
             {
                 //鏂囨湰
                 if (ctrl is TextEdit)
                 {
                     var txt = ctrl as TextEdit;
-                    txt.ReadOnly = isEdt;
+                    if (_isRead(txt.Tag))
+                    {
+                        txt.ReadOnly = true;
+                    }
+                    else
+                        txt.ReadOnly = isEdt;
                     continue;
                 }
                 if (ctrl is MemoEdit)
                 {
                     var txt = ctrl as MemoEdit;
-                    txt.ReadOnly = isEdt;
+                    if (_isRead(txt.Tag))
+                    {
+                        txt.ReadOnly = true;
+                    }
+                    else
+                        txt.ReadOnly = isEdt;
                     continue;
                 }
                 //鏁板瓧鍗�
@@ -965,9 +1099,89 @@
                         txt.Enabled = false;
                     continue;
                 }
+                //鑷畾鐢ㄦ埛
+                if (ctrl is UcLookUser)
+                {
+                    var txt = ctrl as UcLookUser;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾鎵撳嵃
+                if (ctrl is UcLookPrint)
+                {
+                    var txt = ctrl as UcLookPrint;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾缂洪櫡绫诲埆
+                if (ctrl is UcLookDefectType)
+                {
+                    var txt = ctrl as UcLookDefectType;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾閮ㄩ棬
+                if (ctrl is UcLookDepartment)
+                {
+                    var txt = ctrl as UcLookDepartment;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾daa
+                if (ctrl is UcLookDaa)
+                {
+                    var txt = ctrl as UcLookDaa;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾濮斿
+                if (ctrl is UcLookWwgd)
+                {
+                    var txt = ctrl as UcLookWwgd;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                if (ctrl is SimpleButton)
+                {
+                    var txt = ctrl as SimpleButton;
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
             }
         }
 
+        private static bool _isRead(object obj, bool isEdt = false)
+        {
+            ///姘歌繙鏄彧璇荤殑
+            if (obj != null && obj.ToString().ToUpper() == ("readOnly".ToUpper()))
+            {
+                return true;
+            }
+            ///姘歌繙鏄彲鍐欑殑
+            if (obj != null && obj.ToString().ToUpper() == ("readOnly-1".ToUpper()))
+            {
+                return false;
+            }
+            return isEdt;
+        }
         /// <summary>
         ///     鍒囨崲閫夐」鍗�
         /// </summary>
@@ -987,6 +1201,59 @@
                 tabControl.TabPages[i].PageEnabled = false;
             tabControl.TabPages[idx].PageEnabled = true;
             tabControl.SelectedTabPageIndex = idx;
+        }
+
+
+        /// <summary>
+        /// tab璺宠浆锛�0鏌ョ湅锛�1閫�鍑猴紝2鍒犻櫎锛�3淇敼锛�4鏂板鍔�
+        /// </summary>
+        /// <param name="tabControl"></param>
+        /// <param name="idx">0鏌ョ湅锛�1閫�鍑猴紝2鍒犻櫎锛�3淇敼锛�4鏂板鍔�</param>
+        public static void JumpTab(XtraTabControl tabControl, int action)
+        {
+
+            if (action == 0)
+            {
+                tabControl.TabPages[0].PageEnabled = true;
+                tabControl.TabPages[1].PageEnabled = true;
+                tabControl.SelectedTabPageIndex = 1;
+                return;
+            }
+            if (action == 1)
+            {
+                tabControl.TabPages[0].PageEnabled = true;
+                tabControl.TabPages[1].PageEnabled = true;
+                tabControl.SelectedTabPageIndex = 0;
+                return;
+            }
+            if (action == 2)
+            {
+                tabControl.TabPages[0].PageEnabled = true;
+                tabControl.TabPages[1].PageEnabled = true;
+                tabControl.SelectedTabPageIndex = 0;
+                return;
+            }
+            if (action == 3)
+            {
+                tabControl.TabPages[0].PageEnabled = false;
+                tabControl.TabPages[1].PageEnabled = true;
+                tabControl.SelectedTabPageIndex = 1;
+                return;
+            }
+            if (action == 4)
+            {
+                tabControl.TabPages[0].PageEnabled = false;
+                tabControl.TabPages[1].PageEnabled = true;
+                tabControl.SelectedTabPageIndex = 1;
+                return;
+            }
+            if (action == 5)
+            {
+                tabControl.TabPages[0].PageEnabled = true;
+                tabControl.TabPages[1].PageEnabled = true;
+                tabControl.SelectedTabPageIndex = 1;
+                return;
+            }
         }
 
         /// <summary>
@@ -1097,6 +1364,18 @@
             if (str.ToUpper() == "true".ToUpper())
                 return 1;
             return 0;
+        }
+        public static bool ToBoole(string str)
+        {
+            if (str.ToUpper() == "true".ToUpper())
+                return true;
+            return false;
+        }
+        public string GetIsNullOrEmpty(string str)
+        {
+            if (string.IsNullOrEmpty(str.Trim()))
+                return "{>";
+            return str.Trim();
         }
 
         /// <summary>
@@ -1238,7 +1517,6 @@
                     }
                 }
             }
-
             return "";
         }
 
@@ -1291,9 +1569,15 @@
                         btnChkIco.Text = checkStatus;
                         btnChkIco.Visible = true;
                         if (checkStatus == "1" || checkStatus.ToUpper() == true.ToString().ToUpper())
+                        {
                             btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_check;
+                            btnChkIco.Tag = "宸插鏍�";
+                        }
                         else
+                        {
                             btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_noCheck;
+                            btnChkIco.Tag = "鏈鏍�";
+                        }
                         btnChkIco.Anchor = AnchorStyles.Top | AnchorStyles.Right; // 闈犲彸
                         btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20, 80); // 璺濈椤堕儴10鍍忕礌
                     }
@@ -1352,23 +1636,32 @@
             }
             return _sbSqlWhere.ToString();
         }
+
+
+        public delegate void DelegateGetModel(string guid);
+        public delegate void DelegateGetList(int currentPage);
         /// <summary>
         /// 
         /// </summary>
         /// <param name="gridView1">gridview</param>
-        /// <param name="btnChkIco">鍥炬爣鎸夐挳</param>
-        /// <param name="fm">褰撳墠绐椾綋</param>
+        /// <param name="picCheckBox">鍥炬爣鎸夐挳</param>
+        /// <param name="fm"></param>
         /// <param name="fileName">瀛楁</param>
         /// <param name="icoName">鍥炬爣璺緞</param>
-        public static void SetGridSear(GridView gridView1, PictureBox btnChkIco = null, Form fm = null, string fileName = "checkStatus", string icoName = "")
+        /// <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.OptionsView.ColumnAutoWidth = false;鑷姩璋冩暣鍒楀
-
+            gridView1.OptionsView.ColumnAutoWidth = false;//鑷姩璋冩暣鍒楀
+            // gridView1.BestFitColumns();//鏁版嵁缁戝畾鍒癎ridView涔嬪悗璋冪敤BestFitColumns()鏂规硶
             foreach (GridColumn column in gridView1.Columns)
             {
                 column.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains;
                 column.OptionsFilter.ImmediateUpdateAutoFilter = false;
-                // column.OptionsColumn.AllowEdit = false;
+                column.OptionsColumn.AllowEdit = true;
+                if (column.Tag == null || column.Tag.ToString().EndsWith("edit"))
+                    column.OptionsColumn.ReadOnly = false;
+                else
+                    column.OptionsColumn.ReadOnly = true;
                 if (column.Tag == null || column.Tag.ToString().Length <= 0)
                     column.OptionsFilter.AllowAutoFilter = false;
             }
@@ -1393,13 +1686,85 @@
                     e.Bounds.Top + 45, e.Bounds.Right - 5, e.Bounds.Height - 5);
                 e.Graphics.DrawString(str, f, Brushes.Gray, r);
             };
-            if (btnChkIco != null)
+            if (picCheckBox != null)
             {
                 gridView1.FocusedRowChanged += (s, e) =>
                 {
-                    UtilityHelper.SetCheckIco(s, btnChkIco, fm, fileName, icoName);
+                    UtilityHelper.SetCheckIco(s, picCheckBox, fm, fileName, icoName);
                 };
             }
+            if (action != null)
+            {
+                gridView1.ShownEditor += (sender, e) =>
+                {
+                    DevExpress.XtraGrid.Views.Grid.GridView view = sender as DevExpress.XtraGrid.Views.Grid.GridView;
+                    view.ActiveEditor.DoubleClick += (ssssss, eeeeeee) =>
+                    {
+                        int _handle = gridView1.FocusedRowHandle;
+                        if (_handle == -1)
+                            return;
+                        DataRow row = gridView1.GetDataRow(_handle);
+                        if (row == null)
+                            return;
+                        string _guid = row["guid"].ToString();
+                        if (string.IsNullOrEmpty(_guid))
+                            return;
+                        action(_guid);
+                    };
+                    if (view.ActiveEditor is TextEdit)
+                        view.ActiveEditor.MouseUp += ActiveEditor_MouseUp;
+                };
+            }
+            gridView1.RowStyle += (s, e) =>
+            {
+                gridView1.OptionsSelection.EnableAppearanceFocusedRow = false;//榛樿閫変腑琛屼笉鍙樿壊
+                gridView1.OptionsSelection.EnableAppearanceFocusedCell = false;//榛樿閫変腑鍗曞厓鏍间笉鍙樿壊
+                if (e.RowHandle >= 0)
+                {
+                    DataRow row = gridView1.GetDataRow(e.RowHandle);
+                    if (row == null)
+                        return;
+                    bool columnExists = row.Table.Columns.Contains("isRed");
+                    if (columnExists == true)
+                    {
+                        string _isRed = row["isRed"].ToString();
+                        if (_isRed == "1")
+                        {
+                            e.Appearance.BackColor = Color.LightPink;
+                        }
+                    }
+                }
+            };
+        }
+        private static void ActiveEditor_MouseUp(object sender, MouseEventArgs e)
+        {
+            BaseEdit edit = sender as BaseEdit;
+            edit.MouseUp -= ActiveEditor_MouseUp;
+            edit.SelectAll();
+        }
+
+        public static void SetTabParameter(GridView gridView1, DevExpress.XtraTab.XtraTabControl xtraTabControl1, UcPageBar pageBar1, DelegateGetModel action = null, DelegateGetList page = null)
+        {
+            xtraTabControl1.SelectedPageChanged += (s, e) =>
+            {
+                if (xtraTabControl1.SelectedTabPageIndex == 1)
+                {
+                    int _handle = gridView1.FocusedRowHandle;
+                    if (_handle == -1)
+                        return;
+                    DataRow row = gridView1.GetDataRow(_handle);
+                    if (row == null)
+                        return;
+                    string _guid = row["guid"].ToString();
+                    if (string.IsNullOrEmpty(_guid))
+                        return;
+                    action(_guid);
+                }
+                if (xtraTabControl1.SelectedTabPageIndex == 0)
+                {
+                    page(pageBar1.CurrentPage);
+                }
+            };
         }
 
         /// <summary>
@@ -1410,8 +1775,9 @@
         /// <param name="fm"></param>
         /// <param name="fileName"></param>
         /// <param name="icoName"></param>
-        public static void SetGridSearMx(GridView gridView1)
+        public static void SetGridViewParameterMx(GridView gridView1)
         {
+            gridView1.OptionsView.ColumnAutoWidth = false;//鑷姩璋冩暣鍒楀
             gridView1.OptionsFilter.AllowFilterEditor = false;
             gridView1.OptionsFilter.ShowCustomFunctions = DevExpress.Utils.DefaultBoolean.False;
             gridView1.OptionsCustomization.AllowFilter = false;
@@ -1459,8 +1825,6 @@
             Regex regex = new Regex("^[0-9]+$");
             return regex.IsMatch(str);
         }
-
-      
 
     }
 

--
Gitblit v1.9.3