我正在构建一个SL4应用程序。目前,我的验证适用于以下场景:
但是,它不适用于此:
如何在第二种情况下获得验证以触发?
我这样做的原因是我有一个“名称”字段,该字段最初为空但必须填充。如果用户跳过它,我想标记错误。
答案 0 :(得分:1)
从您的名字开始:您可以使用内置的[Required]验证器。 这是否能解决问题取决于您如何实现输入表单。
如果在您描述的场景中没有触发,您可以编写一个方法,在Submit,LostFocus或适合解决方案的任何地方调用,它会浏览包含您的表单的Visual Tree并触发验证。
答案 1 :(得分:0)
只要新数据从UI传输到视图模型,就会发生验证。默认情况下,这会发生在丢失的焦点上,但是您可以将此默认值更改为每次更改输入(命中一个ner键)或手动(通过调用绑定类的方法)。
在任何情况下,当表单出现时,用户看到无效数据是非常令人困惑的....请避免使用它。在显示表单之前执行手动Validatio ....然后在显示之前尝试更正或取消无效数据。