Silverlight:用户专注于文本框后立即验证?

时间:2010-10-03 17:05:53

标签: c# silverlight validation

我正在构建一个SL4应用程序。目前,我的验证适用于以下场景:

  • 用户专注于文本框
  • 用户输入无效数据
  • 用户不再关注文本框

但是,它不适用于此:

  • 用户关注的文本框已包含无效数据
  • 用户不再关注文本框

如何在第二种情况下获得验证以触发?

我这样做的原因是我有一个“名称”字段,该字段最初为空但必须填充。如果用户跳过它,我想标记错误。

2 个答案:

答案 0 :(得分:1)

从您的名字开始:您可以使用内置的[Required]验证器。 这是否能解决问题取决于您如何实现输入表单。

如果在您描述的场景中没有触发,您可以编写一个方法,在Submit,LostFocus或适合解决方案的任何地方调用,它会浏览包含您的表单的Visual Tree并触发验证。

答案 1 :(得分:0)

只要新数据从UI传输到视图模型,就会发生验证。默认情况下,这会发生在丢失的焦点上,但是您可以将此默认值更改为每次更改输入(命中一个ner键)或手动(通过调用绑定类的方法)。

在任何情况下,当表单出现时,用户看到无效数据是非常令人困惑的....请避免使用它。在显示表单之前执行手动Validatio ....然后在显示之前尝试更正或取消无效数据。

相关问题