FrameworkPropertyMetadata.BindsTwoWayByDefault Egenskap

Definition

Hämtar eller anger ett värde som anger om egenskapen binder tvåvägs som standard.

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

Egenskapsvärde

trueom beroendeegenskapen som dessa metadata finns på binder tvåvägs som standard; annars . false Standardvärdet är false.

Undantag

Metadata har redan tillämpats på en beroendeegenskapsåtgärd, så att metadata är förseglade och att egenskaperna för metadata inte kan anges.

Exempel

I följande exempel hämtas standardmetadata från olika beroendeegenskapsfält, frågar efter värdet för olika FrameworkPropertyMetadata egenskaper på den och använder informationen för att fylla i en tabell för att implementera en "metadatawebbläsare".

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")

Kommentarer

Om den här egenskapen inte är trueär bindningsuppdateringar enkelriktade som standard, baserat på standardbeteendet Binding för konstruktorerna eller motsvarande XAML-syntax.

I befintliga element hittar du vanligtvis den här egenskapen inställd på i metadata för beroendeegenskaper som både rapporterar tillstånd och kan ändras av användaråtgärder, till true exempel Selector.IsSelected.

Den här egenskapen rapporterar endast standardegenskaperna för bindningsuppdatering för beroendeegenskapen i allmänhet. Alla bindningar som anges till den här egenskapen på en instans kan lokalt ange Mode bindningens egenskap och ändra den här standardinställningen.

Egenskaper för alla härledda klasser PropertyMetadata av definieras vanligtvis i objektmodellen som skrivskyddad. Detta gör att de kan justeras efter initieringen av instansen. Men när metadata har förbrukats som en del av ett anrop till Register, AddOwnereller OverrideMetadata, kommer egenskapssystemet att försegla att metadatainstansen och egenskaper som förmedlar detaljerna i metadata nu anses oföränderliga. Om du försöker ange den här egenskapen när IsSealed den finns true på den här metadatainstansen genereras ett undantag.

XAML-textanvändning

Medlemmar i den här klassen används vanligtvis inte i XAML.

Gäller för

Se även