FrameworkPropertyMetadata.IsNotDataBindable 属性

定义

获取或设置一个值,该值指示依赖属性是否支持数据绑定。

public:
 property bool IsNotDataBindable { bool get(); void set(bool value); };
public bool IsNotDataBindable { get; set; }
member this.IsNotDataBindable : bool with get, set
Public Property IsNotDataBindable As Boolean

属性值

Boolean

如果属性不支持数据绑定,则为 true;否则为 false。 默认值为 false

例外

已对依赖属性操作应用了元数据,因此元数据已密封,且无法设置其属性。

注解

请注意,尽管是读写属性,但此元数据属性专门设置为 true 不应支持数据绑定的属性。 预期是,在大多数情况下声明依赖属性时,需要数据绑定,因为数据绑定是依赖属性有用的关键方案之一。 与不同 BindsTwoWayByDefault,这不仅仅是更改以后可以在特定绑定上更改的默认值。 在依赖项属性元数据的元数据中设置此属性 true 将禁用所有绑定通过表达式应用于该依赖属性的值。

只读依赖项属性不支持数据绑定 (,因为它们没有可以应用更改值) 的 setter,但仍会报告falseIsNotDataBindable该属性。 这是因为与值对应的 FrameworkPropertyMetadataOptions 属性将报告与元数据实际建立方式的奇偶校验,而不是始终报告属性命名可能暗示的最终结果行为。 若要确定给定的依赖项属性是否允许数据绑定,通常应该进行检查 IsDataBindingAllowedIsDataBindingAllowed是一种方便,用于检查和ReadOnlyIsNotDataBindable作为单个操作,从而产生预期结果。

派生类 PropertyMetadata 的属性通常在对象模型中定义为读写。 因此,在初始化实例后可以调整它们。 但是,在元数据作为调用RegisterAddOwner的一部分使用元数据后,或者OverrideMetadata,属性系统将密封用于传达元数据具体细节的元数据实例和属性现在被视为不可变的。 尝试在此元数据实例上设置此属性后IsSealedtrue会引发异常。

XAML 文本用法

此类的成员通常不在 XAML 中使用。

适用于

另请参阅