FrameworkPropertyMetadata.IsNotDataBindable Propiedad

Definición

Obtiene o establece un valor que indica si la propiedad de dependencia admite enlace de datos.

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

Valor de propiedad

true si la propiedad no admite enlace de datos; de lo contrario, false. De manera predeterminada, es false.

Excepciones

Los metadatos ya se aplicaron a una operación de propiedad de dependencia, por lo que están sellados y no se pueden establecer sus propiedades.

Comentarios

Tenga en cuenta que esta propiedad de metadatos se establece true en específicamente para las propiedades que no deben admitir el enlace de datos, a pesar de ser propiedades de lectura y escritura. La expectativa es que, en la mayoría de los casos en los que se declara una propiedad de dependencia, se desea el enlace de datos, ya que el enlace de datos es uno de los escenarios clave en los que una propiedad de dependencia es útil. A diferencia BindsTwoWayByDefaultde , esto no simplemente cambia un valor predeterminado que se puede cambiar más adelante en un enlace específico. Al establecer esta propiedad true en los metadatos de los metadatos de una propiedad de dependencia, se deshabilitarán todos los enlaces para aplicar sus valores a través de expresiones a esa propiedad de dependencia.

Las propiedades de dependencia de solo lectura no admiten el enlace de datos (porque no tienen ningún establecedor que pueda aplicar valores modificados), pero seguirán informando false de IsNotDataBindable. Esto se debe a que las propiedades que corresponden a un FrameworkPropertyMetadataOptions valor notificarán la paridad con el modo en que los metadatos se establecieron realmente, en lugar de informar siempre del comportamiento final del resultado que podría implicar la nomenclatura de la propiedad. Para determinar si una propiedad de dependencia determinada permite el enlace de datos, normalmente debe comprobar IsDataBindingAllowed en su lugar. IsDataBindingAllowed es una comodidad para comprobar y ReadOnlyIsNotDataBindable como una sola operación, lo que produce el resultado esperado.

Las propiedades de las clases derivadas de PropertyMetadata se definen normalmente en el modelo de objetos como lectura y escritura. Esto es para que se puedan ajustar después de la inicialización de la instancia. Sin embargo, después de que los metadatos se consuman como parte de una llamada a Register, AddOwnero OverrideMetadata, el sistema de propiedades sellará que la instancia de metadatos y las propiedades que transmiten los detalles de los metadatos ahora se consideran inmutables. Si intenta establecer esta propiedad después IsSealed de que se encuentra true en esta instancia de metadatos, se producirá una excepción.

Uso de texto XAML

Los miembros de esta clase no se suelen usar en XAML.

Se aplica a

Consulte también