FrameworkPropertyMetadata.BindsTwoWayByDefault Proprietà

Definizione

Ottiene o imposta un valore che indica se la proprietà esegue l'associazione bidirezionale per impostazione predefinita.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

Valore della proprietà

true se la proprietà di dipendenza in cui si trovano questi metadati esegue l'associazione bidirezionale per impostazione predefinita. In caso contrario, false.true if the dependency property on which this metadata exists binds two-way by default; otherwise, false. Il valore predefinito è false.The default is false.

Eccezioni

Poiché sono già stati applicati a un'operazione della proprietà di dipendenza, questi metadati sono sealed e non è possibile impostarne le proprietà.The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

Esempio

Nell'esempio seguente vengono ottenuti i metadati predefiniti da vari campi delle proprietà di dipendenza, viene eseguita una query sul valore di diverse proprietà di FrameworkPropertyMetadata e vengono utilizzate le informazioni per popolare una tabella per implementare un "browser dei metadati".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")

Commenti

In assenza di questa proprietà true, gli aggiornamenti dell'associazione sono unidirezionali per impostazione predefinita, in base al comportamento predefinito dei costruttori Binding o alla sintassi XAMLXAML 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.

Negli elementi esistenti questa proprietà viene in genere impostata su true nei metadati per le proprietà di dipendenza che lo stato del report e sono modificabili dall'azione dell'utente, ad esempio 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.

Questa proprietà segnala solo le caratteristiche predefinite di aggiornamento dell'associazione della proprietà di dipendenza in generale.This property only reports the default binding update characteristics of the dependency property in general. Qualsiasi associazione impostata a questa proprietà in un'istanza di può impostare localmente la proprietà Mode dell'associazione e modificare questa impostazione predefinita.Any binding set to this property on an instance can locally set the Mode property of the binding and change this default.

Le proprietà di tutte le classi derivate di PropertyMetadata vengono in genere definite nel modello a oggetti come di lettura/scrittura.Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. In modo che possano essere modificate dopo l'inizializzazione dell'istanza.This is so they can be adjusted after initialization of the instance. Tuttavia, dopo che i metadati sono stati utilizzati come parte di una chiamata a Register, AddOwnero OverrideMetadata, il sistema di proprietà sigillerà l'istanza di metadati e le proprietà che comunicano le specifiche dei metadati sono ora considerate non modificabili.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. Il tentativo di impostare questa proprietà dopo IsSealed è true in questa istanza di metadati genererà un'eccezione.Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

Utilizzo del testo XAMLXAML Text Usage

I membri di questa classe non vengono in genere utilizzati in XAMLXAML.Members of this class are not typically used in XAMLXAML.

Si applica a

Vedi anche