DataGridView数据验证
DataGridView数据验证用cellValidating事件只能在用户点击这个单元格然后离开的时候才验证,如果用户没有点击这个单元格,那么就不会验证,怎么让用户不管点不点单元格,都在保存的时候对该单元格验证啊?有没有DataGridView控件带的哪个事件可以解决这个问题,或者其他方法解决这个问题
[解决办法]
所以你要把各个不同的验证放各自控件的validate的事件里面。
[解决办法]
循环遍历Datagridview中的每一个单元格,进行验证。
[解决办法]
每天回帖即可获得10分可用分!
[解决办法]
SqlDs1.Tables("学生信息").RowChanged += new DataRowChangeEventHandler(sqlDt_RowChanged);
private void sqlDt_RowChanged(object sender, DataRowChangeEventArgs eRow)
{
? ? string strRowErrInfo = "";
? ?
? ? if (Information.IsNumeric(eRow.Row("学号").ToString().Trim) == false) {
? ? ? ? strRowErrInfo = "学号必须为数字!" + ControlChars.CrLf;
? ? }
? ? else {
? ? ? ? if (eRow.Row("学号").ToString().Trim.Length != 12) {
? ? ? ? ? ? strRowErrInfo = "学号只能是12个数字字符!" + ControlChars.CrLf;
? ? ? ? }
? ? }
? ?
? ? if (eRow.Row("姓名").Trim.Length == 0) {
? ? ? ? strRowErrInfo += "姓名不能为空!" + ControlChars.CrLf;
? ? }
? ?
? ? if (eRow.Row("性别").Trim.Length == 0) {
? ? ? ? strRowErrInfo += "性别不能为空!" + ControlChars.CrLf;
? ? }
? ? else {
? ? ? ? if (eRow.Row("性别").Trim != "男" & eRow.Row("性别").Trim != "女") {
? ? ? ? ? ? strRowErrInfo += "性别只能为男或女!" + ControlChars.CrLf;
? ? ? ? }
? ? }
? ?
? ? if (Information.IsNumeric(eRow.Row("班级编号").trim) == false) {
? ? ? ? strRowErrInfo += "班级编号必须为数字!" + ControlChars.CrLf;
? ? }
? ? else {
? ? ? ? if (eRow.Row("班级编号").Trim.Length != 10) {
? ? ? ? ? ? strRowErrInfo += "班级编号只能是10个数字字符!" + ControlChars.CrLf;
? ? ? ? }
? ? }
? ?
? ? if (strRowErrInfo.Trim.Length != 0) {
? ? ? ? eRow.Row.RowError = "本行数据存在以下错误:" + ControlChars.CrLf + strRowErrInfo;
? ? }
}