本文主要是介绍Dev中GridView、RepositoryItemGridLookUpEdit、LookUpEdit等扩展方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
/// <summary>/// GridView列属性设置类/// </summary>public class BaseColumnSet{/// <summary>/// 列名(可不设置)/// </summary>public string Name { get; set; }/// <summary>/// 绑定字段/// </summary>public string FieldName { get; set; }/// <summary>/// 列名(显示)/// </summary>public string Caption { get; set; }/// <summary>/// 列宽(默认100)/// </summary>public int Width { get; set; } = 100;/// <summary>/// 是否显示(默认显示)/// </summary>public bool Visible { get; set; } = true;/// <summary>/// 显示位置(默认按照列表添加顺序)/// </summary>public int? VisibleIndex { get; set; }/// <summary>/// 设置列是否可编辑(默认可编辑)/// </summary>public bool AllowEdit { get; set; } = true;/// <summary>/// 格式化类型/// </summary>public FormatType formatType { get; set; } = FormatType.None;/// <summary>/// 格式化类型名称 /// </summary>public string FormatString { get; set; }/// <summary>/// 分组/// </summary>public int GroupIndex { get; set; } = -1;/// <summary>/// 排序/// </summary>public ColumnSortOrder sortOrder { get; set; } = ColumnSortOrder.None;/// <summary>/// 设置可编辑列/// 例:RepositoryItemCheckEdit RepositoryItemImageEdit RepositoryItemGridLookUpEdit RepositoryItemComboBox/// </summary>public RepositoryItem ColumnEdit { get; set; }/// <summary>/// 设置列内容是否可合并/// </summary>public DefaultBoolean AllowMerge { get; set; } = DefaultBoolean.Default;}
/// <summary>/// 控件设置公共类/// </summary>public static class CtrlSetCommon{/// <summary>/// 设置GridView显示列属性/// </summary>/// <param name="gv">GridView</param>/// <param name="list">列属性集合</param>/// <param name="indicatorShow">显示行号:默认True</param>public static void SetColumns(this GridView gv, List<BaseColumnSet> list, bool indicatorShow = true, int indicatorWidth = 30){string fieldName = string.Empty;for (int i = 0; i < list.Count; i++){fieldName = list[i].FieldName;gv.Columns.AddField(fieldName);if (!string.IsNullOrWhiteSpace(list[i].Name))gv.Columns[fieldName].Name = list[i].Name;gv.Columns[fieldName].Caption = list[i].Caption;gv.Columns[fieldName].Width = list[i].Width;gv.Columns[fieldName].VisibleIndex = list[i].VisibleIndex ?? i;gv.Columns[fieldName].Visible = list[i].Visible;gv.Columns[fieldName].OptionsColumn.AllowEdit = list[i].AllowEdit;if (list[i].formatType != FormatType.None){gv.Columns[fieldName].DisplayFormat.FormatType = list[i].formatType;gv.Columns[fieldName].DisplayFormat.FormatString = list[i].FormatString;}gv.Columns[fieldName].GroupIndex = list[i].GroupIndex;gv.Columns[fieldName].SortOrder = list[i].sortOrder;if (list[i].ColumnEdit != null)gv.Columns[fieldName].ColumnEdit = list[i].ColumnEdit;//可编辑列if (list[i].AllowMerge != DefaultBoolean.Default)gv.Columns[fieldName].OptionsColumn.AllowMerge = list[i].AllowMerge;//设置合并列elsegv.Columns[fieldName].OptionsColumn.AllowMerge = DefaultBoolean.False;//设置合并列}if (indicatorShow){gv.IndicatorWidth = indicatorWidth;gv.CustomDrawRowIndicator += Gv_CustomDrawRowIndicator;}}/// <summary>/// 显示行号/// </summary>private static void Gv_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e){if (e.Info.IsRowIndicator && e.RowHandle >= 0){e.Info.DisplayText = (e.RowHandle + 1).ToString().PadLeft(3, ' ');}}#region RepositoryItemGridLookUpEdit//private static System.Windows.Forms.UserControl userCtrl = null;//private static List<string> strList = null;/// <summary>/// 行内编辑(弹出RepositoryItemGridLookUpEdit)/// 设置GridView显示列属性/// </summary>/// <param name="gridLookUpEdit">行内编辑弹出控件</param>/// <param name="list">列属性集合</param>/// <param name="dt">数据源</param>/// <param name="valueMember">绑定值成员</param>/// <param name="displayMember">绑定显示成员</param>/// <param name="nullText">空值显示:默认为空字符串</param>public static void SetColumns(this RepositoryItemGridLookUpEdit gridLookUpEdit, List<BaseColumnSet> list, DataTable dt = null, string valueMember = "", string displayMember = "", string nullText = ""){GridView gv = gridLookUpEdit.View;//获取当前控件的GridView//DevExpress.XtraGrid.GridControl gridCtrl = gridLookUpEdit.View.GridControl;string fieldName = string.Empty;for (int i = 0; i < list.Count; i++){fieldName = list[i].FieldName;gv.Columns.AddField(fieldName);if (!string.IsNullOrWhiteSpace(list[i].Name))gv.Columns[fieldName].Name = list[i].Name;gv.Columns[fieldName].Caption = list[i].Caption;gv.Columns[fieldName].Width = list[i].Width;gv.Columns[fieldName].VisibleIndex = list[i].VisibleIndex ?? i;gv.Columns[fieldName].Visible = list[i].Visible;gv.Columns[fieldName].OptionsColumn.AllowEdit = list[i].AllowEdit;if (list[i].formatType != FormatType.None){gv.Columns[fieldName].DisplayFormat.FormatType = list[i].formatType;gv.Columns[fieldName].DisplayFormat.FormatString = list[i].FormatString;}gv.Columns[fieldName].GroupIndex = list[i].GroupIndex;gv.Columns[fieldName].SortOrder = list[i].sortOrder;if (list[i].ColumnEdit != null)gv.Columns[fieldName].ColumnEdit = list[i].ColumnEdit;//可编辑列if (list[i].AllowMerge != DefaultBoolean.Default)gv.Columns[fieldName].OptionsColumn.AllowMerge = list[i].AllowMerge;//设置合并列elsegv.Columns[fieldName].OptionsColumn.AllowMerge = DefaultBoolean.False;//设置合并列}gridLookUpEdit.ValueMember = valueMember;//设置值成员gridLookUpEdit.DisplayMember = displayMember;//设置显示成员gridLookUpEdit.NullText = nullText;//设置空值显示gridLookUpEdit.DataSource = dt;//设置数据源}/// <summary>/// 设置匹配的列/// </summary>/// <param name="sender">sender</param>/// <param name="strList">Filter列名</param>public static void FilterLookup(object sender, List<string> strList){//Text += " ! ";GridLookUpEdit edit = sender as GridLookUpEdit;GridView gridView = edit.Properties.View as GridView;FieldInfo fi = gridView.GetType().GetField("extraFilter", BindingFlags.NonPublic | BindingFlags.Instance);//Text = edit.AutoSearchText;List<BinaryOperator> operators = new List<BinaryOperator>();foreach (string strColumnName in strList){operators.Add(new BinaryOperator(strColumnName, "%" + edit.AutoSearchText + "%", BinaryOperatorType.Like));}string filterCondition = new GroupOperator(GroupOperatorType.Or, operators.ToArray()).ToString();fi.SetValue(gridView, filterCondition);MethodInfo mi = gridView.GetType().GetMethod("ApplyColumnsFilterEx", BindingFlags.NonPublic | BindingFlags.Instance);mi.Invoke(gridView, null);}/// <summary>/// 设置匹配的列/// </summary>/// <param name="lookupEditYPDM">RepositoryItemGridLookUpEdit控件</param>/// <param name="list">Filter列名</param>/// <param name="searchText">当前输入值</param>public static void FilterLookup(RepositoryItemGridLookUpEdit lookupEditYPDM, List<string> list, string searchText){//GridLookUpEdit edit = sender as GridLookUpEdit;GridView gridView = lookupEditYPDM.View as GridView;FieldInfo fi = gridView.GetType().GetField("extraFilter", BindingFlags.NonPublic | BindingFlags.Instance);List<BinaryOperator> operators = new List<BinaryOperator>();foreach (string strColumnName in list){operators.Add(new BinaryOperator(strColumnName, "%" + searchText + "%", BinaryOperatorType.Like));}string filterCondition = new GroupOperator(GroupOperatorType.Or, operators.ToArray()).ToString();fi.SetValue(gridView, filterCondition);MethodInfo mi = gridView.GetType().GetMethod("ApplyColumnsFilterEx", BindingFlags.NonPublic | BindingFlags.Instance);mi.Invoke(gridView, null);}#endregion/// <summary>/// 行内编辑(弹出RepositoryItemSearchLookUpEdit)/// 设置GridView显示列属性/// </summary>/// <param name="searchLookUpEdit">行内编辑弹出控件</param>/// <param name="list">列属性集合</param>/// <param name="dt">数据源</param>/// <param name="valueMember">绑定值成员</param>/// <param name="displayMember">绑定显示成员</param>/// <param name="nullText">空值显示:默认为空字符串</param>public static void SetColumns(this RepositoryItemSearchLookUpEdit searchLookUpEdit, List<BaseColumnSet> list, DataTable dt = null, string valueMember = "", string displayMember = "", string nullText = ""){GridView gv = searchLookUpEdit.View;//获取当前控件的GridViewstring fieldName = string.Empty;for (int i = 0; i < list.Count; i++){fieldName = list[i].FieldName;gv.Columns.AddField(fieldName);if (!string.IsNullOrWhiteSpace(list[i].Name))gv.Columns[fieldName].Name = list[i].Name;gv.Columns[fieldName].Caption = list[i].Caption;gv.Columns[fieldName].Width = list[i].Width;gv.Columns[fieldName].VisibleIndex = list[i].VisibleIndex ?? i;gv.Columns[fieldName].Visible = list[i].Visible;gv.Columns[fieldName].OptionsColumn.AllowEdit = list[i].AllowEdit;if (list[i].formatType != FormatType.None){gv.Columns[fieldName].DisplayFormat.FormatType = list[i].formatType;gv.Columns[fieldName].DisplayFormat.FormatString = list[i].FormatString;}gv.Columns[fieldName].GroupIndex = list[i].GroupIndex;gv.Columns[fieldName].SortOrder = list[i].sortOrder;if (list[i].ColumnEdit != null)gv.Columns[fieldName].ColumnEdit = list[i].ColumnEdit;//可编辑列if (list[i].AllowMerge != DefaultBoolean.Default)gv.Columns[fieldName].OptionsColumn.AllowMerge = list[i].AllowMerge;//设置合并列elsegv.Columns[fieldName].OptionsColumn.AllowMerge = DefaultBoolean.False;//设置合并列}searchLookUpEdit.ValueMember = valueMember;//设置值成员searchLookUpEdit.DisplayMember = displayMember;//设置显示成员searchLookUpEdit.NullText = nullText;//设置空值显示searchLookUpEdit.DataSource = dt;//设置数据源}/// <summary>/// LookUpEdit扩展方法/// 设置LookUpEdit数据源、ValueMember、DiaplayMember/// </summary>/// <param name="cmb">LookUpEdit控件</param>/// <param name="dt">数据源</param>/// <param name="valueMember">绑定值成员</param>/// <param name="displayMember">绑定显示成员</param>public static void LookUpEditExtend(this LookUpEdit cmb, DataTable dt, string valueMember, string displayMember, int widthPopup = 100, int heightPopup = 150, bool showHeader = false, bool showFooter = false){cmb.Properties.ValueMember = valueMember;cmb.Properties.DisplayMember = displayMember;cmb.Properties.DataSource = dt;cmb.Properties.PopupSizeable = true;cmb.Properties.PopupFormMinSize = new Size(widthPopup, heightPopup);cmb.Properties.ShowHeader = showHeader;cmb.Properties.ShowFooter = showFooter;}/// <summary>/// 设置LookUpEdit显示列属性/// </summary>/// <param name="lookupEdit">LookUpEdit</param>/// <param name="list">列属性集合</param>public static void SetColumns(this LookUpEdit lookupEdit, List<BaseColumnSet> list){//string fieldName = string.Empty;for (int i = 0; i < list.Count; i++){//fieldName = list[i].FieldName;DevExpress.XtraEditors.Controls.LookUpColumnInfo lookUpColumn = new DevExpress.XtraEditors.Controls.LookUpColumnInfo(){FieldName = list[i].FieldName,Caption = list[i].Caption,Width = list[i].Width,Visible = list[i].Visible,SortOrder = list[i].sortOrder};if (list[i].formatType != FormatType.None){lookUpColumn.FormatType = list[i].formatType;lookUpColumn.FormatString = list[i].FormatString;}lookupEdit.Properties.Columns.Add(lookUpColumn);}}/// <summary>/// 设置GridLookUpEdit显示列属性/// </summary>/// <param name="lookupEdit">LookUpEdit</param>/// <param name="list">列属性集合</param>public static void SetColumns(this GridLookUpEdit lookupEdit, List<BaseColumnSet> list){for (int i = 0; i < list.Count; i++){DevExpress.XtraGrid.Columns.GridColumn lookUpColumn = new DevExpress.XtraGrid.Columns.GridColumn(){FieldName = list[i].FieldName,Caption = list[i].Caption,Width = list[i].Width,Visible = list[i].Visible,SortOrder = list[i].sortOrder};lookupEdit.Properties.View.Columns.Add(lookUpColumn);}}/// <summary>/// GridLookUpEdit扩展方法/// 设置GridLookUpEdit数据源、ValueMember、DiaplayMember/// </summary>/// <param name="cmb">LookUpEdit控件</param>/// <param name="dt">数据源</param>/// <param name="valueMember">绑定值成员</param>/// <param name="displayMember">绑定显示成员</param>public static void LookUpEditExtend(this GridLookUpEdit cmb, DataTable dt, string valueMember, string displayMember, int widthPopup = 110, int heightPopup = 150, bool showFooter = false){cmb.Properties.ValueMember = valueMember;cmb.Properties.DisplayMember = displayMember;cmb.Properties.DataSource = dt;cmb.Properties.PopupSizeable = true;cmb.Properties.PopupFormMinSize = new Size(widthPopup, heightPopup);cmb.Properties.PopupFormSize = new Size(widthPopup, heightPopup);cmb.Properties.ShowFooter = showFooter;cmb.Properties.NullValuePrompt = "请选择";cmb.Properties.NullValuePromptShowForEmptyValue = true;cmb.Properties.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.Standard;cmb.Properties.ImmediatePopup = true;}}
简单调用样例
1、
DataTable dtQYYF = clientCommon.GetMZYF();cmbQYYF.Properties.Columns.Clear();List<BaseColumnSet> listQYYF = new List<BaseColumnSet>();listQYYF.Add(new BaseColumnSet() { FieldName = "YFDM", Caption = "代码", Visible = false });listQYYF.Add(new BaseColumnSet() { FieldName = "YFMC", Caption = "名称", Visible = true });cmbQYYF.SetColumns(listQYYF);cmbQYYF.LookUpEditExtend(dtQYYF, "YFDM", "YFMC");if (dtQYYF.Rows.Count > 0)cmbQYYF.EditValue = dtQYYF.Rows[0]["YFDM"];
2、
dtGYFS = clientCommon.GetGYFS();//获取给药方式数据RepositoryItemGridLookUpEdit lookupEditGYFS = new RepositoryItemGridLookUpEdit();List<BaseColumnSet> listGYFS = new List<BaseColumnSet>();listGYFS.Add(new BaseColumnSet() { FieldName = "YPYFMC", Caption = "**方式", Width = 100, AllowEdit = false });lookupEditGYFS.SetColumns(listGYFS, dtGYFS, "YPYFDM", "YPYFMC", "请选择");lookupEditGYFS.TextEditStyle = TextEditStyles.Standard;lookupEditGYFS.PopupFormSize = new Size(100, 200);lookupEditGYFS.ImmediatePopup = true;//lookupEditGYFS.PopupFilterMode = PopupFilterMode.Contains;//lookupEditGYFS.AllowNullInput = DevExpress.Utils.DefaultBoolean.True;lookupEditGYFS.EditValueChanging += LookupEditGYFS_EditValueChanging;listWestPrescription.Add(new BaseColumnSet() { FieldName = "GYFS", Caption = "**方式", Width = 80, ColumnEdit = lookupEditGYFS, VisibleIndex = 7 });
3、
RepositoryItemGridLookUpEdit lookupEditYPDM = new RepositoryItemGridLookUpEdit();#region 弹出设置列List<BaseColumnSet> listPopup = new List<BaseColumnSet>();listPopup.Add(new BaseColumnSet() { FieldName = "YPMC", Caption = "名称", Width = 200, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "PYDM", Caption = "拼音码", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "GG", Caption = "规格", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "LSJ", Caption = "***", Width = 80, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "SL", Caption = "**", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "PC", Caption = "**", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "PH", Caption = "**", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "CDMC", Caption = "****", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "YBBZ", Caption = "****", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "YPLX", Caption = "***", Width = 60, AllowEdit = false });listPopup.Add(new BaseColumnSet() { FieldName = "BXBZ", Caption = "****", Width = 60, AllowEdit = false });#endregionlookupEditYPDM.SetColumns(listPopup, dtYPDM, "YPDM", "YPMC", "");lookupEditYPDM.TextEditStyle = TextEditStyles.Standard;lookupEditYPDM.PopupFormSize = new Size(500, 200);lookupEditYPDM.ImmediatePopup = true;//lookupEditYPDM.PopupFilterMode = PopupFilterMode.Contains;//lookupEditYPDM.AllowNullInput = DevExpress.Utils.DefaultBoolean.True;lookupEditYPDM.CustomDisplayText += LookupEditYPDM_CustomDisplayText;//因为列表中只有部分药品数据,故需修改显示内容lookupEditYPDM.EditValueChanging += LookupEditYPDM_EditValueChanging;listWestPrescription.Add(new BaseColumnSet() { FieldName = "YPDM", Caption = "名称", Width = 200, ColumnEdit = lookupEditYPDM, VisibleIndex = 3 });
事件
gv_West.OptionsMenu.EnableColumnMenu = false;//gv_WestPrescription.OptionsView.AllowCellMerge = false;//合并单元格(AllowCellMerge)和复选框(MultiSelectMode)不能同时用gv_West.OptionsSelection.MultiSelect = true;gv_West.OptionsSelection.ShowCheckBoxSelectorInColumnHeader = DevExpress.Utils.DefaultBoolean.True;gv_West.OptionsSelection.MultiSelectMode = GridMultiSelectMode.CheckBoxRowSelect;gv_West.OptionsSelection.CheckBoxSelectorColumnWidth = 45;//设置宽度gv_West.CellValueChanging += Gv_West_CellValueChanging;gv_West.FocusedRowChanged += Gv_West_FocusedRowChanged;gv_West.OptionsCustomization.AllowColumnMoving = false;//设置列不可移动gv_West.OptionsView.ColumnAutoWidth = false;//取消列自适应宽度gv_West.ShowingEditor += Gv_West_ShowingEditor;
/// <summary>/// 设置LookUpEditYPDM显示内容/// </summary>private void LookupEditYPDM_CustomDisplayText(object sender, CustomDisplayTextEventArgs e){if (string.IsNullOrWhiteSpace(e.DisplayText)){foreach (DataRow dr in dtWestDataSource.Rows){if (dr["YPDM"].ToString() == e.Value.ToString())e.DisplayText = dr["YPMC"].ToString();}}}/// <summary>/// 设置行数据,不可修改/// </summary>private void Gv_West_ShowingEditor(object sender, CancelEventArgs e){DataRow dr = gv_West.GetDataRow(gv_West.FocusedRowHandle);if (dr != null){if (dr["CFZTMC"].ToString() == "提交")e.Cancel = true;}}#region 行内编辑事件及设置数据源/// <summary>/// 单元格值改变事件/// </summary>private void Gv_West_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e){switch (e.Column.FieldName){case "YPDM": RepositoryItem_SelectYPXX(e); break;//case "GYFS": RepositoryItem_SelectGYFS(e); break;//case "GYPL": RepositoryItem_SelectGYPL(e); break;//case "YSZT": RepositoryItem_SelectYSZT(e); break;case "SL": JudgeKCL("SL", sender, e); break;case "TS": JudgeKCL("TS", sender, e); break;default: break;}}/// <summary>/// 选择**/// </summary>/// <param name="e"></param>private void RepositoryItem_SelectYPXX(DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e){RepositoryItemGridLookUpEdit lookupEditYPDM = gv_West.Columns["YPDM"].ColumnEdit as RepositoryItemGridLookUpEdit;if (lookupEditYPDM.GetRowByKeyValue(e.Value) != null)//选中项不为空,设置当前行的值;选中项为空,重新根据输入值加载下拉面板的值;{DataRow dr = ((DataRowView)lookupEditYPDM.GetRowByKeyValue(e.Value)).Row;#region 设置当前行数据gv_West.SetRowCellValue(e.RowHandle, "YPDM", dr["YPDM"]);gv_West.SetRowCellValue(e.RowHandle, "YPMC", dr["YPMC"]);gv_West.SetRowCellValue(e.RowHandle, "JL", dr["DEFAULT_JL"]);gv_West.SetRowCellValue(e.RowHandle, "JLDW", dr["JLDW"]);gv_West.SetRowCellValue(e.RowHandle, "GG", dr["GG"]);gv_West.SetRowCellValue(e.RowHandle, "SL", 0);string zybzStr = GetZYBZ();gv_West.SetRowCellValue(e.RowHandle, "ZYBZ", zybzStr);gv_West.SetRowCellValue(e.RowHandle, "SXH", "1");gv_West.SetRowCellValue(e.RowHandle, "LSJ", dr["LSJ"]);//***gv_West.SetRowCellValue(e.RowHandle, "KCL", dr["SL"]);//***gv_West.SetRowCellValue(e.RowHandle, "DW", dr["DW"].ToString());gv_West.SetRowCellValue(e.RowHandle, "YPYF", dr["DEFAULT_YF"]);//**string ts = txtTS.EditValue.ToString();gv_West.SetRowCellValue(e.RowHandle, "TS", ts);gv_West.SetRowCellValue(e.RowHandle, "MZDW", dr["MZDW"].ToString());gv_West.SetRowCellValue(e.RowHandle, "MZDJ", dr["MZDJ"]);gv_West.SetRowCellValue(e.RowHandle, "CDDM", dr["CDDM"]);gv_West.SetRowCellValue(e.RowHandle, "PC", dr["PC"]);gv_West.SetRowCellValue(e.RowHandle, "PH", dr["PH"]);gv_West.SetRowCellValue(e.RowHandle, "PS", dr["SFPS"]);gv_West.SetRowCellValue(e.RowHandle, "SYZ", "1");gv_West.SetRowCellValue(e.RowHandle, "BXBZ", dr["BXBZ"]);gv_West.SetRowCellValue(e.RowHandle, "SFBL", dr["SFBL"]); //****gv_West.SetRowCellValue(e.RowHandle, "MZBL", dr["MZBL"]);#endregion}else if (e.Value != null && !string.IsNullOrWhiteSpace(e.Value.ToString())){//根据当前输入内容,重新获取药品数据源,需去掉当前控件的查询功能,让当前控件的面板弹出//DataTable dtYPXX = GetYPXX(e.Value.ToString());//lookupEditYPDM.DataSource = dtYPXX;//此处数据源设置完,lookupEditYPDM.View.DataSource依然为空,故显示结果为空}}/// <summary>/// 焦点行改变事件/// </summary>private void Gv_West_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e){ShowCFInfo();}/// <summary>/// 获取****/// </summary>/// <returns>1**;0***</returns>private string GetZYBZ(){string result = "1";//1**;0***DataTable dt = gridCtrlWest.DataSource as DataTable;if (dt == null){return result;}foreach (DataRow dr in dt.Rows){if (dr["CFZTMC"].ToString() == "开单"){return "0";//1**;0***}else if (string.IsNullOrWhiteSpace(dr["CFZTMC"].ToString()) && dr["ZYBZ"].ToString() == "1"){return "0";//1**;0***}}return result;}private void LookupEditYPDM_EditValueChanging(object sender, ChangingEventArgs e){this.BeginInvoke(new System.Windows.Forms.MethodInvoker(delegate{CtrlSetCommon.FilterLookup(sender, new List<string>() { "PYDM", "YPMC", "YPDM" });}));}private void LookupEditGYFS_EditValueChanging(object sender, ChangingEventArgs e){this.BeginInvoke(new System.Windows.Forms.MethodInvoker(delegate{CtrlSetCommon.FilterLookup(sender, new List<string>() { "PYDM", "YPYFDM", "YPYFMC" });}));}private void LookupEditGYPL_EditValueChanging(object sender, ChangingEventArgs e){this.BeginInvoke(new System.Windows.Forms.MethodInvoker(delegate{CtrlSetCommon.FilterLookup(sender, new List<string>() { "PYDM", "BDDM", "BDMC" });}));}/// <summary>/// 判断***/// </summary>private void JudgeKCL(string columnName, object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e){DataRow dr = (gv_West.GetRow(e.RowHandle) as DataRowView).Row;string strSL = dr["SL"] == null ? "0" : dr["SL"].ToString();//**string strTS = dr["TS"] == null ? "0" : dr["TS"].ToString();//**string strKCL = dr["KCL"] == null ? "0" : dr["KCL"].ToString();//***string currentValue = (e.Value == null || string.IsNullOrEmpty(e.Value.ToString())) ? "0" : e.Value.ToString();int slInt = 0, tsInt = 0, kclInt = 0;int.TryParse(strSL, out slInt);int.TryParse(strTS, out tsInt);int.TryParse(strKCL, out kclInt);if (columnName == "SL")slInt = int.Parse(currentValue);else if (columnName == "TS")tsInt = int.Parse(currentValue);if (slInt * tsInt > kclInt){XtraMessageBox.Show("当前**下的****不能大于***" + strKCL + " ,请修改此行" + (columnName == "TS" ? "**" : "**") + "!", "提醒", MessageBoxButtons.OK, MessageBoxIcon.Warning);}ShowCFInfo();}#endregion
这篇关于Dev中GridView、RepositoryItemGridLookUpEdit、LookUpEdit等扩展方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!