| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1094 人关注过本帖
标题:datagridview的CellValidating问题
只看楼主 加入收藏
llrp
Rank: 2
等 级:论坛游民
帖 子:8
专家分:20
注 册:2011-4-14
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:2 
datagridview的CellValidating问题
近日再用datagridview的时候出了个麻烦,代码如下:
 void uc2_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
        {
            string pat = @"^[\u4e00-\u9fa5]{2,4}$";
            Regex r = new Regex(pat, RegexOptions.IgnoreCase);

            if (e.ColumnIndex == 0 && e.RowIndex != -1)
            {
                Match m = r.Match(e.FormattedValue.ToString());
                if (!m.Success)
                {

                    e.Cancel = true;

                    MessageBox.Show("请输入中文姓名!", "警告");




                }
            }}
问题在于当cell输入的不是中文时CellValidating事件居然会调用三次,必须用鼠标点击三次messagebox才能关闭警告窗口,请问如果让他只调用一次呢?

搜索更多相关主题的帖子: void 
2011-06-20 19:05
dwwwing
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:284
专家分:986
注 册:2008-10-11
收藏
得分:20 
按照你这个代码来看是不会出现这种问题的。是不是其他地方关联了?
2011-06-20 20:53
llrp
Rank: 2
等 级:论坛游民
帖 子:8
专家分:20
注 册:2011-4-14
收藏
得分:0 
谢谢啦,我一直纠结在事件本身,钻在里面出不来了,你的话提醒了我确实是其他方面关联了,问题已经找到了。
2011-06-20 21:30
快速回复:datagridview的CellValidating问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024002 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved