System.Windows.Controls 命名空 ...


.NET Framework 类库
ExceptionValidationRule 类

更新:2007 年 11 月

表示一个规则,该规则检查在绑定源属性更新过程中引发的异常。

命名空间:  System.Windows.Controls
程序集:  PresentationFramework(在 PresentationFramework.dll 中)
用于 XAML 的 XMLNS:http://schemas.microsoft.com/winfx/xaml/presentation

语法

Visual Basic(声明)
Public NotInheritable Class ExceptionValidationRule _
    Inherits ValidationRule
Visual Basic (用法)
Dim instance As ExceptionValidationRule
C#
public sealed class ExceptionValidationRule : ValidationRule
Visual C++
public ref class ExceptionValidationRule sealed : public ValidationRule
J#
public final class ExceptionValidationRule extends ValidationRule
JScript
public final class ExceptionValidationRule extends ValidationRule
XAML 对象元素用法
<ExceptionValidationRule .../>
备注

使用 WPF 数据绑定模型可以将 ValidationRulesBinding 对象相关联。ExceptionValidationRule 类是一个内置的规则,它检查在绑定源属性更新过程中引发的异常。使用 UpdateSourceExceptionFilterCallback 可以提供自定义逻辑,以指定绑定引擎如何处理这些异常。有关更多信息,请参见 UpdateSourceExceptionFilter

用于显式设置 ExceptionValidationRule 的另一种语法是将 BindingMultiBinding 对象上的 ValidatesOnExceptions 属性设置为 true

通过创建一个从 ValidationRule 派生的类,可以创建自定义规则。有关数据验证的更多信息和详细讨论,请参见数据绑定概述

示例

ValidationRules 属性接受 ValidationRule 对象的集合。下面的示例使用 TextBox..::.Text 作为绑定目标属性,使用 StartPrice(一个整数)作为绑定源属性。当用户输入的值无法转换为整数时,将引发异常,该异常会导致 ExceptionValidationRule 使目标值无效。

C#
<TextBox Name="StartPriceEntryForm" Grid.Row="2" Grid.Column="1"
    Style="{StaticResource textStyleTextBox}" Margin="8,5,0,5">
  <TextBox.Text>
    <Binding Path="StartPrice" UpdateSourceTrigger="PropertyChanged">
      <Binding.ValidationRules>
        <ExceptionValidationRule />
      </Binding.ValidationRules>
    </Binding>
  </TextBox.Text>
</TextBox>

默认情况下,当出现验证错误时,TextBox 显示红色边框。您还可以选择编写自定义 ErrorTemplate,以指定当出现验证错误时如何通知用户。

有关数据验证的更多信息,请参见数据绑定概述

有关完整的示例,请参见数据绑定演示

继承层次结构

System..::.Object
  System.Windows.Controls..::.ValidationRule
    System.Windows.Controls..::.ExceptionValidationRule
线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
平台

Windows Vista

.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

版本信息

.NET Framework

受以下版本支持:3.5、3.0
另请参见

参考

其他资源

标记 :


Page view tracker