Validation 带模板的Silverlight 3验证数据表单

Validation 带模板的Silverlight 3验证数据表单,validation,silverlight-3.0,dataform,Validation,Silverlight 3.0,Dataform,我有一个SL3应用程序,其中我使用DataForm输入数据。我希望我的表单以我喜欢的方式显示,因此,我使用,在模板中我有我好看的表单设计 主要问题是,在模板中,我必须使用普通控件(如TextBox)而不是“field”控件(如DataFormTextField)。它们的工作原理几乎相同,但在进行验证时有很大的不同 如果我在绑定属性的setter中抛出异常,它们都会显示正确的红色符号和错误,但是如果我通过验证属性(例如[Required(ErrorMessage=“cannot be empty!

我有一个SL3应用程序,其中我使用DataForm输入数据。我希望我的表单以我喜欢的方式显示,因此,我使用
,在模板中我有我好看的表单设计

主要问题是,在模板中,我必须使用普通控件(如TextBox)而不是“field”控件(如DataFormTextField)。它们的工作原理几乎相同,但在进行验证时有很大的不同

如果我在绑定属性的setter中抛出异常,它们都会显示正确的红色符号和错误,但是如果我通过验证属性(例如
[Required(ErrorMessage=“cannot be empty!”)]
)装饰属性,则只有DataFormTextField控件而不是TextBox控件会显示错误。在这两种情况下,我的ErrorSummary控件在其集合中都有错误,因此我可以看到正在考虑该错误


非常感谢您的帮助。

您正在使用模板字段吗

   <df:DataFormTemplateField FieldLabelContent="Year"> 
      <df:DataFormTemplateField.DisplayTemplate> 
        <DataTemplate> 
          <TextBox Text="{Binding Year}" HorizontalAlignment="Left" /> 
        </DataTemplate> 
      </df:DataFormTemplateField.DisplayTemplate> 
      <df:DataFormTemplateField.EditTemplate> 
        <DataTemplate> 
          <TextBox Text="{Binding Year}" HorizontalAlignment="Left" /> 
        </DataTemplate> 
      </df:DataFormTemplateField.EditTemplate> 
    </df:DataFormTemplateField> 

我的意思是,您的“文本框”是否在DataFormTemplate字段中?我在想,如果您的文本框不在template字段中,它会解释为什么验证错误不会出现。