首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ErrorProvider的Winforms

使用ErrorProvider的Winforms
EN

Stack Overflow用户
提问于 2013-12-11 15:43:21
回答 1查看 655关注 0票数 0

我使用的ErrorProvider代码如下所示:

代码语言:javascript
复制
private void textBoxLocation_Validating(object sender, CancelEventArgs e)
{
  if (!ValidateLocation())
  {
    e.Cancel = true;
  }
}

这个特定的textBox意味着用户可以输入特定的路径,直接输入到textBox,或者按“浏览”按钮打开FileDialog,然后将路径复制到textBox。

问题是,当用户直接向文本框输入未经验证的内容时,就会调用e.Cancel = true;,从而使textBox不会失去焦点,但我甚至不能按浏览按钮来选择路径。不仅如此,我甚至不能关闭程序。怎么解决这个问题呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-11 15:46:23

您大概是在用ValidateLocation设置ErrorProvider的文本。在这种情况下,您真的不想在这里使用e.Cancel,因为它的目的就是做它正在做的事情。保持控制不失去焦点。

在输入错误的场景中,这将是有意义的。

因此,简单地说,在这里使用e.Cancel是没有意义的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20523488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档