Linq,错误提供程序,数据绑定:自定义错误消息

时间:2011-08-23 11:12:32

标签: c# linq linq-to-sql data-binding error-handling

我们正在使用LINQ-to-sql,数据绑定和错误提供程序对象开发C#Windows窗体应用程序。

数据绑定会在您尝试输入不允许的数据时立即显示自动生成的消息(例如,在数字字段中输入字母数字字符)。但是生成的消息不是非常用户友好的(输入字符串格式不正确,值无效,值不是从pos 0开始的日期时间等)。

您认为处理此问题的最佳方法是什么?通过在数据绑定控件上将“FormattingEnabled”设置为false来关闭自动验证,这意味着您必须自己处理所有验证?或者可能扩展对象以覆盖消息,例如扩展/覆盖TypeConverter?制作执行基本验证的自定义控件(比如创建一个只允许整数,金钱价值等的文本框)?

2 个答案:

答案 0 :(得分:1)

如果是我,我会将Textbox内容限制为仅允许int等...

如果文本框的值为null,则添加messageBox.Show。

你需要一个如何做到这一点的例子吗?

答案 1 :(得分:1)

我最终做的是制作自定义输入控件:

  • 限制输入
  • 覆盖OnValidation而不调用base.OnValidation
  • 创建自己的ErrorProvider,如果需要,它会显示自定义错误消息。