【问题标题】:Silverlight validation with DataAnnotation使用 DataAnnotation 进行 Silverlight 验证
【发布时间】:2011-01-25 13:33:07
【问题描述】:

我的问题如下:

我有一个获得可编辑实体的 ChildWindow。

我使用 DataAnnotation 属性来设置验证规则。

我的实体有一个 Name 属性,并在其上应用了 Required 属性。

如果我修改现有实体并清除绑定到 Name 属性的文本框 我收到一个需要名称字段的验证错误。

但是当我添加一个新实体并且 Name 属性为 null 时,验证不起作用。

我在类的构造函数中将 Name 属性设置为 String.Empty,并在子窗口中显示实体,验证错误显示在文本框中。

什么是最好的解决方案?

我可以将显示子窗口的按钮设置为不触发验证吗?

在 Asp.NET 中,按钮控件的 IsCausesValidation 属性为 false,按钮不会触发验证。

谢谢提前,

【问题讨论】:

    标签: silverlight silverlight-4.0


    【解决方案1】:

    你想达到什么目的?在您通过底层绑定对象上的 setter 实际设置属性之前,不会引发验证异常。您是否希望在用户首次输入数据输入表单时显示所有验证错误?你在使用数据表格吗?如果是这样,您应该能够在保存数据时验证整个表单,例如

        private void OKButton_Click(object sender, RoutedEventArgs e)
        {
            bool valid = MyDataForm.ValidateItem();
            if (valid)
            {
                MyDataForm.CommitEdit(true);
                this.DialogResult = true;
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-13
      • 1970-01-01
      • 2013-04-12
      • 2011-07-05
      • 1970-01-01
      • 2015-05-02
      相关资源
      最近更新 更多