博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DataGridView 输入数据验证格式(实例)
阅读量:6445 次
发布时间:2019-06-23

本文共 1571 字,大约阅读时间需要 5 分钟。

在DataGridView属性里面添加dgvOne_CellValidating事件,然后根据需要以后。

   private void dgvOne_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)

    {
        //可编辑的列2、3、4、5、6(实际显示的列减1)列需要输入0~9的自然数.
        if ( e.ColumnIndex == 2 || e.ColumnIndex == 3 || e.ColumnIndex == 4 || e.ColumnIndex == 5 || e.ColumnIndex == 6)
        {
            int outDb = 0;
            if (int.TryParse(e.FormattedValue.ToString(), out outDb))
            {
                e.Cancel = false;
            }
            else
            {
                e.Cancel = true;//数据格式不正确则还原
                MessageBox.Show("请输入0~9的自然数!", "提交提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                dgvOne.CancelEdit();
            }
        }

      //第二列验证时间格式

        if (e.ColumnIndex == 1)
        {
            DateTime  outDb =DateTime.Now;
            if (DateTime.TryParse(e.FormattedValue.ToString(), out outDb))
            {
                e.Cancel = false;
            }
            else
            {
                e.Cancel = true;//数据格式不正确则还原
                MessageBox.Show("输入日期格式不正确,请重新输入!", "提交提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                dgvOne.CancelEdit();
            }
        }

            //第一列验证正整数

        if (e.ColumnIndex == 0)

        {
            Regex notWholePattern = new Regex(@"^[0-9]\d*$");
            if (notWholePattern.IsMatch(e.FormattedValue.ToString(), 0))
            {
                e.Cancel = false;
            }
            else
            {
                e.Cancel = true;//数据格式不正确则还原
                MessageBox.Show("输入序号的格式不正确,请重新输入正整数!", "提交提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                dgvTwo.CancelEdit();
            }
        }

       //长度验证

        if (e.ColumnIndex == 6 || e.ColumnIndex == 7)

        {
            string str = e.FormattedValue.ToString();
            int leng = str.Length;
            if (leng > 1)
            {
                e.Cancel = true;//数据格式不正确则还原
                MessageBox.Show("只能输入一位0~9的自然数,请重新输入!", "提交提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                dgvTwo.CancelEdit();

            }

            else
            {
                e.Cancel = false;
            }
        }

    }

转载于:https://www.cnblogs.com/richzhang/archive/2013/06/04/3117898.html

你可能感兴趣的文章
Entity Framework 5.0系列之Code First数据库迁移
查看>>
数据库相关知识
查看>>
日志服务器设计
查看>>
Xshell生成密钥key(用于Linux 免密码登录)
查看>>
滑动到底部或顶部响应的ScrollView实现
查看>>
自己动手丰衣足食之征服jQuery插件编写
查看>>
基于业务单元的开发与部署模式
查看>>
第二代支付系统专题之报文篇(一)小额支付报文完整版(含二代新增功能业务说明)...
查看>>
非侵入式监控PHP应用性能监控分析
查看>>
LoadRunner 技巧之 脚本设计
查看>>
English Contest -- My English History
查看>>
CentOS挂载NTFS盘符问题
查看>>
Hadoop - Kylin On OLAP
查看>>
浅议javascript的内存泄露
查看>>
数据仓库专题(4)-分布式数据仓库事实表设计思考---讨论精华
查看>>
Nginx应用笔记(二)Nginx配置文件说明
查看>>
在Linux(Ubuntu)+Nginx安装配置AjaXplorer
查看>>
(八十九)txt文档的输入和输出
查看>>
openssl vulnerability affect PostgreSQLs
查看>>
使用ant编译发布web项目
查看>>