FrameworkPropertyMetadata.BindsTwoWayByDefault Propiedad

Definición

Obtiene o establece un valor que indica si la propiedad enlaza de manera bidireccional de forma predeterminada.Gets or sets a value that indicates whether the property binds two-way by default.

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

Valor de propiedad

Boolean

true si la propiedad de dependencia en la que existen estos metadatos enlaza de manera bidireccional de forma predeterminada; de lo contrario, false.true if the dependency property on which this metadata exists binds two-way by default; otherwise, false. De manera predeterminada, es false.The default is 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.The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

Ejemplos

En el ejemplo siguiente se obtienen los metadatos predeterminados de varios campos de propiedades de dependencia, se consulta el valor de diversas FrameworkPropertyMetadata propiedades en él y se usa la información para rellenar una tabla con el fin de implementar un "explorador de metadatos".The following example obtains the default metadata from various dependency property fields, queries the value of various FrameworkPropertyMetadata properties on it, and uses the information to populate a table to implement a "metadata browser".

pm = dp.GetMetadata(dp.OwnerType);
pm = dp.GetMetadata(dp.OwnerType)
FrameworkPropertyMetadata fpm = pm as FrameworkPropertyMetadata;
if (fpm!=null) {
    AffectsArrange.Text = (fpm.AffectsArrange) ? "Yes" : "No";
    AffectsMeasure.Text = (fpm.AffectsMeasure) ? "Yes" : "No";
    AffectsRender.Text = (fpm.AffectsRender) ? "Yes" : "No";
    Inherits.Text = (fpm.Inherits) ? "Yes" : "No";
    IsDataBindingAllowed.Text = (fpm.IsDataBindingAllowed) ? "Yes" : "No";
    BindsTwoWayByDefault.Text = (fpm.BindsTwoWayByDefault) ? "Yes" : "No";
}         
Dim fpm As FrameworkPropertyMetadata = TryCast(pm, FrameworkPropertyMetadata)
If fpm IsNot Nothing Then
    AffectsArrange.Text = If((fpm.AffectsArrange), "Yes", "No")
    AffectsMeasure.Text = If((fpm.AffectsMeasure), "Yes", "No")
    AffectsRender.Text = If((fpm.AffectsRender), "Yes", "No")
        [Inherits].Text = If((fpm.Inherits), "Yes", "No")
    IsDataBindingAllowed.Text = If((fpm.IsDataBindingAllowed), "Yes", "No")
    BindsTwoWayByDefault.Text = If((fpm.BindsTwoWayByDefault), "Yes", "No")

Comentarios

En ausencia de esta propiedad true , las actualizaciones de enlace son unidireccionales de forma predeterminada, según el comportamiento predeterminado de los Binding constructores o la XAMLXAML Sintaxis equivalente.In absence of this property being true, binding updates are one-way by default, based on the default behavior of the Binding constructors or equivalent XAMLXAML syntax.

En los elementos existentes, normalmente encontrará esta propiedad establecida en true en los metadatos de las propiedades de dependencia que el estado del informe y son modificables por acción del usuario, por ejemplo Selector.IsSelected .In existing elements, you will usually find this property set to true in metadata for dependency properties that both report state and are modifiable by user action, for example Selector.IsSelected.

Esta propiedad solo informa de las características de actualización de enlace predeterminadas de la propiedad de dependencia en general.This property only reports the default binding update characteristics of the dependency property in general. Cualquier enlace establecido en esta propiedad en una instancia puede establecer localmente la Mode propiedad del enlace y cambiar este valor predeterminado.Any binding set to this property on an instance can locally set the Mode property of the binding and change this default.

Las propiedades de cualquier clase derivada de PropertyMetadata se definen normalmente en el modelo de objetos como de lectura y escritura.Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. Esto es para que se puedan ajustar después de la inicialización de la instancia.This is so they can be adjusted after initialization of the instance. Sin embargo, después de que se consuman los metadatos como parte de una llamada a Register , AddOwner o OverrideMetadata , el sistema de propiedades sellará esa instancia de metadatos y las propiedades que transmiten los detalles de los metadatos se consideran ahora inmutables.However, after the metadata is consumed as part of a call to Register, AddOwner, or OverrideMetadata, the property system will seal that metadata instance and properties that convey the specifics of the metadata are now considered immutable. Si se intenta establecer esta propiedad después IsSealed true de en esta instancia de metadatos, se producirá una excepción.Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

Uso de texto XAMLXAML Text Usage

Los miembros de esta clase no se utilizan normalmente en XAMLXAML .Members of this class are not typically used in XAMLXAML.

Se aplica a

Consulte también