FrameworkPropertyMetadata.BindsTwoWayByDefault FrameworkPropertyMetadata.BindsTwoWayByDefault FrameworkPropertyMetadata.BindsTwoWayByDefault FrameworkPropertyMetadata.BindsTwoWayByDefault Property

Definition

Ruft einen Wert ab, der angibt, ob die Eigenschaft standardmäßig bidirektional gebunden wird, oder legt ihn fest.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

Eigenschaftswert

true, falls die Abhängigkeitseigenschaft, für die diese Metadaten vorhanden sind, standardmäßig bidirektional gebunden wird, andernfalls false.true if the dependency property on which this metadata exists binds two-way by default; otherwise, false. Die Standardeinstellung ist false.The default is false.

Ausnahmen

Die Metadaten wurden bereits auf einen Vorgang der Abhängigkeitseigenschaft angewendet, sodass Metadaten versiegelt sind und keine Eigenschaften für Metadaten festgelegt werden können.The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

Beispiele

Im folgenden Beispiel werden die Standard Metadaten aus verschiedenen Abhängigkeits FrameworkPropertyMetadata Eigenschaften Feldern abgerufen, der Wert verschiedener Eigenschaften abgefragt und die Informationen zum Auffüllen einer Tabelle zum Implementieren eines "metadatenbrowsers" verwendet.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")

Hinweise

Wenn diese Eigenschaft nicht truevorhanden ist, sind Bindungs Aktualisierungen standardmäßig unidirektional, basierend auf dem Standardverhalten Binding der Konstruktoren oder der entsprechenden XAMLXAML Syntax.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.

In vorhandenen Elementen finden Sie diese Eigenschaft true in der Regel in Metadaten für Abhängigkeits Eigenschaften, die sowohl den Status melden als auch durch Benutzeraktion Selector.IsSelectedänderbar sind.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.

Mit dieser Eigenschaft werden nur die standardmäßigen Bindungs Update Merkmale der Abhängigkeits Eigenschaft im allgemeinen gemeldet.This property only reports the default binding update characteristics of the dependency property in general. Jede Bindung, die auf diese Eigenschaft für eine Instanz festgelegt ist Mode , kann die-Eigenschaft der Bindung lokal festlegen und diese Standardeinstellung ändern.Any binding set to this property on an instance can locally set the Mode property of the binding and change this default.

Eigenschaften für abgeleitete Klassen von PropertyMetadata werden in der Regel im Objektmodell als Lese-/Schreibzugriff definiert.Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. So können Sie nach der Initialisierung der-Instanz angepasst werden.This is so they can be adjusted after initialization of the instance. Nachdem die Metadaten jedoch im Rahmen eines Aufrufes Registervon, AddOwneroder OverrideMetadataverwendet werden, versiegelt das Eigenschaften System, dass die Metadateninstanz und die Eigenschaften, die die Besonderheiten der Metadaten vermitteln, jetzt als unveränderlich angesehen werden.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. Wenn Sie versuchen, diese Eigenschaft IsSealed fest true zulegen, nachdem auf dieser Metadateninstanz ist, wird eine Ausnahme ausgelöst.Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

Verwendung von XAML-TextXAML Text Usage

Member dieser Klasse werden in der Regel nicht in XAMLXAMLverwendet.Members of this class are not typically used in XAMLXAML.

Gilt für:

Siehe auch