1 //RowCellStyle 行单元格样式事件 2 //用于设置行单元格样式 3 //这里举例 如果状态为0则白背景色改为蓝绿色 4 5 if(e.RowHanle>=0)//当前视图的所有行 6 { 7 DataRow dr =this.view.GetRow(e.RowHanle);//获取所以行的数据 8 if(dr==null) return; 9 if(dr["AGE"]==0) 10 { 11 e.Appearance.Backcolor=Color.YellowGreen; 12 } 13 } 14 15 16 17 //ValidatingEditor 验证编辑器事件 18 //验证view中某一列的值不能相同 19 //例:用户编号不能相同 USER_CODE 20 private void viewUser_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e) 21 { 22 //如果当前焦点列为用户编码列USER_CODE 23 if (this.viewUser.FocusedColumn == this.viewUser.Columns[DE.GmUser.USER_CODE]) 24 { 25 //e.Value当前列的值 26 if (e.Value == null || string.IsNullOrEmpty(e.Value.ToString())) return; 27 28 string usrCode = e.Value.ToString(); 29 int currowHandler = this.viewUser.FocusedRowHandle;//当前焦点行的行号 30 int rowHandler = this.viewUser.LocateByValue(0, this.viewUser.FocusedColumn, usrCode);//从第一行开始查找该列相同的userCode,返回行号。view.(从哪里开始查找,列名,要查找的值) 31 32 if (rowHandler > -1) 33 { 34 if (rowHandler != currowHandler) 35 { 36 if (this.viewUser.FocusedValue != null) 37 { 38 //提示信息:用户编号不能重复 39 } 40 e.Valid = false;//提示单元格的值无效 单元格会出现一个红色的× 41 this.viewUser.HideEditor();//隐藏编辑器,放弃次单元格所做的更改 42 this.viewUser.ShowEditor();//显示编辑器 43 } 44 45 } 46 else 47 { 48 rowHandler = this.viewUser.LocateByValue(this.viewUser.RowCount - 1, this.viewUser.FocusedColumn, usrCode);//反过来查找 49 50 if (rowHandler > -1 && rowHandler != currowHandler) 51 { 52 if (this.viewUser.FocusedValue != null) 53 { 54 //提示信息:用户编号不能重复 55 } 56 e.Valid = false; 57 this.viewUser.HideEditor(); 58 this.viewUser.ShowEditor(); 59 } 60 } 61 } 62 63 } 64 65 66 67 68 69 //ValidatingEditor 验证编辑器事件 70 //验证view中某多列的值不能相同 71 72 private void viewOrgTarget_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e) 73 { 74 if (this.viewOrgTarget.FocusedColumn == this.viewOrgTarget.Columns[DE.BmOrgTarget.OPER_DATE]) 75 { 76 int intHandle = this.viewOrgTarget.FocusedRowHandle; 77 this.viewOrgTarget.FocusedRowHandle = -1; 78 this.viewOrgTarget.FocusedRowHandle = intHandle; 79 80 if (e.Value == null || string.IsNullOrEmpty(e.Value.ToString())) return; 81 82 DataRow drCurrent = this.viewOrgTarget.GetFocusedDataRow(); 83 84 string strBrandId = TWays.Utils.ToString(drCurrent[DE.BmOrgTarget.BRAND_ID]); 85 string strBranchId = TWays.Utils.ToString(drCurrent[DE.BmOrgTarget.BRANCH_ID]); 86 string strCateId = TWays.Utils.ToString(drCurrent[DE.BmOrgTarget.CATE_ID]); 87 string strOrgType = TWays.Utils.ToString(drCurrent[DE.BmOrgTarget.ORG_TYPE]); 88 string strOperDate = e.Value.ToString(); 89 if (string.IsNullOrEmpty(strBrandId)) 90 { 91 //提示信息 92 e.Valid = false; 93 this.viewOrgTarget.HideEditor(); 94 this.viewOrgTarget.ShowEditor(); 95 } 96 else if (string.IsNullOrEmpty(strBranchId)) 97 { 98 //提示信息 99 e.Valid = false; 100 this.viewOrgTarget.HideEditor(); 101 this.viewOrgTarget.ShowEditor(); 102 } 103 else if (string.IsNullOrEmpty(strCateId)) 104 { 105 //提示信息 106 e.Valid = false; 107 this.viewOrgTarget.HideEditor(); 108 this.viewOrgTarget.ShowEditor(); 109 } 110 else if (string.IsNullOrEmpty(strOrgType)) 111 { 112 //提示信息 113 e.Valid = false; 114 this.viewOrgTarget.HideEditor(); 115 this.viewOrgTarget.ShowEditor(); 116 } 117 else if (!string.IsNullOrEmpty(strOperDate)) 118 { 119 int iRowCount = 0; 120 121 for (int i = 0; i < this.viewOrgTarget.RowCount; i++) 122 { 123 DataRow dr = this.viewOrgTarget.GetDataRow(i); 124 if (TWays.Utils.ToString(dr[DE.BmOrgTarget.BRAND_ID]) == strBrandId && 125 TWays.Utils.ToString(dr[DE.BmOrgTarget.BRANCH_ID]) == strBranchId && 126 TWays.Utils.ToString(dr[DE.BmOrgTarget.CATE_ID]) == strCateId && 127 TWays.Utils.ToString(dr[DE.BmOrgTarget.ORG_TYPE]) == strOrgType && 128 TWays.Utils.ToString(dr[DE.BmOrgTarget.OPER_DATE]) == strOperDate) 129 { 130 iRowCount++; 131 } 132 } 133 if (iRowCount > 0) 134 { 135 //提示信息 136 viewOrgTarget.SetFocusedRowCellValue(colShowOperDate, null); 137 e.Valid = false; 138 this.viewOrgTarget.HideEditor(); 139 this.viewOrgTarget.ShowEditor(); 140 } 141 } 142 } 143 } 144
关于DevExpress GridView事件
猜你喜欢
转载自www.cnblogs.com/Swaggy-yyq/p/12066446.html
今日推荐
周排行