From f14d1fc28a8012035ee251fba71a0d048e9efd0d Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期四, 16 一月 2025 09:10:48 +0800
Subject: [PATCH] 工具条切换状态
---
DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs | 387 ++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 298 insertions(+), 89 deletions(-)
diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 401c407..e59d30d 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -59,7 +59,7 @@
}
}
}
-
+
public static string HttpPost(string url, string meth, string param)
{
string _caption = "鎷煎懡鍔犺浇涓紝璇风◢鍚�...";
@@ -80,30 +80,30 @@
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);
+ // wdf.SetCaption(_caption + "锛�20/100锛�" + meth);
requestStream = new StreamWriter(request.GetRequestStream());
requestStream.Write(param);
requestStream.Close();
- wdf.SetCaption(_caption + "30/100锛�" + meth);
+ // wdf.SetCaption(_caption + "30/100锛�" + meth);
response = request.GetResponse();
- wdf.SetCaption(_caption + "锛�40/100锛�");
+ // wdf.SetCaption(_caption + "锛�40/100锛�");
if (response != null)
{
- wdf.SetCaption(_caption + "锛�50/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�50/100锛�" + meth);
var reader = new StreamReader(response.GetResponseStream(),
Encoding.UTF8);
responseStr = reader.ReadToEnd();
//File.WriteAllText(Server.MapPath("~/") + @"\test.txt", responseStr);
reader.Close();
- wdf.SetCaption(_caption + "锛�60/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�60/100锛�" + meth);
}
- wdf.SetCaption(_caption + "锛�80/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�80/100锛�" + meth);
}
catch (Exception ex)
{
@@ -117,7 +117,7 @@
requestStream = null;
response = null;
}
- wdf.SetCaption(_caption + "锛�90/100锛�");
+ // wdf.SetCaption(_caption + "锛�90/100锛�");
wdf.Close();
return responseStr;
}
@@ -269,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)
{
@@ -314,7 +330,6 @@
txt.ReadOnly = isEdt;
continue;
}
-
if (colType is ImageComboBoxEdit)
{
var txt = colType as ImageComboBoxEdit;
@@ -329,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)
{
@@ -363,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)
@@ -378,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)
{
@@ -391,7 +407,6 @@
txt.ReadOnly = isEdt;
continue;
}
-
//鍗曢��
if (colType is CheckEdit)
{
@@ -416,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)
{
@@ -442,7 +463,6 @@
txt.Enabled = !isEdt;
continue;
}
-
//Label
if (colType is Label)
{
@@ -525,7 +545,6 @@
txt.Enabled = false;
continue;
}
-
//鑷畾瀹㈡埛
if (colType is UcLookCustomer)
{
@@ -603,6 +622,28 @@
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;
@@ -614,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;
}
}
}
@@ -629,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)
{
@@ -667,7 +739,6 @@
txt.ReadOnly = isEdt;
continue;
}
-
//鑷畾涔夌殑涓嬫媺
if (ctrl is UcComBox)
{
@@ -676,7 +747,6 @@
txt.Enabled = !isEdt;
continue;
}
-
//鏂囨湰
if (ctrl is TextEdit)
{
@@ -687,17 +757,15 @@
}
else
txt.Text = "";
- txt.ReadOnly = isEdt;
+ if (_isRead(txt.Tag))
+ {
+ txt.ReadOnly = true;
+ }
+ else
+ txt.ReadOnly = isEdt;
continue;
}
- if (ctrl is MemoEdit)
- {
- var txt = ctrl as MemoEdit;
- if (txt != null)
- txt.Text = "";
- txt.ReadOnly = isEdt;
- continue;
- }
+
//鏃堕棿
if (ctrl is DateTimePicker)
{
@@ -709,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;
}
@@ -823,13 +892,28 @@
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;
}
-
}
}
@@ -844,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;
}
//鏁板瓧鍗�
@@ -1040,9 +1139,49 @@
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>
@@ -1070,9 +1209,11 @@
/// </summary>
/// <param name="tabControl"></param>
/// <param name="idx">0鏌ョ湅锛�1閫�鍑猴紝2鍒犻櫎锛�3淇敼锛�4鏂板鍔�</param>
- public static void JumpTab(XtraTabControl tabControl, int action) {
+ public static void JumpTab(XtraTabControl tabControl, int action)
+ {
- if (action == 0) {
+ if (action == 0)
+ {
tabControl.TabPages[0].PageEnabled = true;
tabControl.TabPages[1].PageEnabled = true;
tabControl.SelectedTabPageIndex = 1;
@@ -1223,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>
@@ -1416,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鍍忕礌
}
@@ -1436,9 +1595,15 @@
{
return new FilterEntity(getQueryWord(id), idDec + ")", " like ", "鍖呭惈)", "%" + val + "%");
}
- public static List<FilterEntity> GetDilter(GridColumnCollection Columns)
+ public static List<FilterEntity> GetDilter(GridColumnCollection Columns, GridView gridView1 = null)
{
List<FilterEntity> fiList = new List<FilterEntity>();
+ if (gridView1 != null)
+ {
+ bool b = gridView1.ActiveFilterEnabled;
+ if (b == false)
+ return fiList;
+ }
foreach (DevExpress.XtraGrid.Columns.GridColumn col in Columns)
{
ColumnFilterInfo filter = col.FilterInfo;
@@ -1495,23 +1660,35 @@
gridView1.OptionsView.ColumnAutoWidth = false;//鑷姩璋冩暣鍒楀
foreach (GridColumn column in gridView1.Columns)
{
- column.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains;
- column.OptionsFilter.ImmediateUpdateAutoFilter = false;
column.OptionsColumn.AllowEdit = true;
- column.OptionsColumn.ReadOnly = true;
+ column.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains;
+ column.OptionsFilter.AutoFilterCondition = DevExpress.XtraGrid.Columns.AutoFilterCondition.Contains;
+ column.OptionsFilter.ImmediateUpdateAutoFilter = false;
+ 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;
}
gridView1.OptionsFilter.AllowAutoFilterConditionChange = DevExpress.Utils.DefaultBoolean.False;
+ gridView1.OptionsView.ShowAutoFilterRow = true;
gridView1.OptionsFilter.AllowFilterEditor = false;
gridView1.OptionsFilter.ShowCustomFunctions = DevExpress.Utils.DefaultBoolean.False;
+ gridView1.OptionsFilter.AllowColumnMRUFilterList = false;
+ gridView1.OptionsFilter.AllowMRUFilterList = false;
gridView1.OptionsCustomization.AllowFilter = false;
gridView1.OptionsFind.ShowSearchNavButtons = false;
- gridView1.OptionsView.ShowAutoFilterRow = true;
gridView1.OptionsView.ShowGroupPanel = false;
+ //鏄惁鏄剧ず搴曢儴鐨勮繃婊ゆ潯
+ // gridView1.OptionsView.ShowFilterPanelMode = DevExpress.XtraGrid.Views.Base.ShowFilterPanelMode.Never;
gridView1.IndicatorWidth = 50;
gridView1.CustomDrawRowIndicator += (s, e) =>
{
+ //if (e.RowHandle == GridControl.AutoFilterRowHandle)
+ //{
+ // e.Info.DisplayText = "绛涢�夎";
+ //}
if (e.Info.IsRowIndicator && e.RowHandle >= 0)
e.Info.DisplayText = (e.RowHandle + 1).ToString();
};
@@ -1552,7 +1729,26 @@
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)
{
@@ -1568,19 +1764,33 @@
if (xtraTabControl1.SelectedTabPageIndex == 1)
{
int _handle = gridView1.FocusedRowHandle;
- if (_handle == -1)
+ bool _bl = xtraTabControl1.TabPages[0].PageEnabled;
+ if (_bl == false) { return; };
+ if (_handle < 0 )
+ {
+ xtraTabControl1.SelectedTabPageIndex = -1;
+ Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犺鏄剧ず鐨勮锛�" + _handle.ToString() + "tag" + xtraTabControl1.SelectedTabPageIndex.ToString());
return;
+ }
DataRow row = gridView1.GetDataRow(_handle);
if (row == null)
+ {
+ xtraTabControl1.SelectedTabPageIndex = -1;
+ Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犺鏄剧ず鐨勮锛�" + _handle.ToString());
return;
+ }
string _guid = row["guid"].ToString();
if (string.IsNullOrEmpty(_guid))
+ {
+ xtraTabControl1.SelectedTabPageIndex = -1;
+ Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犺鏄剧ず鐨勮锛�" + _handle.ToString());
return;
+ }
action(_guid);
}
if (xtraTabControl1.SelectedTabPageIndex == 0)
{
- page(pageBar1.CurrentPage);
+ // page(pageBar1.CurrentPage);
}
};
}
@@ -1595,6 +1805,7 @@
/// <param name="icoName"></param>
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;
@@ -1642,8 +1853,6 @@
Regex regex = new Regex("^[0-9]+$");
return regex.IsMatch(str);
}
-
-
}
--
Gitblit v1.9.3