FrameworkPropertyMetadata.Inherits Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob der Wert für die Abhängigkeitseigenschaft vererbbar ist, oder legt ihn fest.Gets or sets a value that indicates whether the value of the dependency property is inheritable.

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

Eigenschaftswert

true, wenn der Eigenschaftswert vererbbar ist, andernfalls false.true if the property value is inheritable; 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

Die WPFWPF Vererbung von Eigenschafts Werten ist eine Funktion des-Eigenschaften Systems auf der WPF-Frameworkebene, bei der bestimmte Abhängigkeits Eigenschaften lokal für ein Element in XAMLXAML oder in der Nähe des Stamms einer Elementstruktur festgelegt werden können und deren Wert dann von alle Elemente in der logischen Struktur von untergeordneten Elementen, die auch diese Eigenschaft besitzen.Property value inheritance is a feature of the WPFWPF property system at the WPF framework level, whereby certain dependency properties can be locally set on an element at or near the root of a XAMLXAML element tree and then have their value inherited by all elements within the logical tree of child elements that also possess that property. Die Vererbung von Eigenschafts Werten ist standardmäßig nicht aktiviert, und das Aktivieren der Eigenschaft wirkt sich auf die Leistung aus.Property value inheritance is not enabled by default, and enabling it does have some performance implications. Weitere Informationen finden Sie unter Vererbung von Eigenschaftswerten.For details, see Property Value Inheritance.

Hinweis

Obwohl die Vererbung von Eigenschafts Werten für nicht angefügte Abhängigkeits Eigenschaften aussehen könnte, ist das Vererbungs Verhalten für eine nicht angefügte Eigenschaft über bestimmte Objekt-Objekt-Bereiche in der Laufzeitstruktur nicht definiert.Although property value inheritance might appear to work for nonattached dependency properties, the inheritance behavior for a nonattached property through certain object-object divisions in the runtime tree is undefined. Verwenden RegisterAttached Sie immer, um die Eigenschaften zu Inherits registrieren, die Sie in den Metadaten angeben.Always use RegisterAttached to register properties where you specify Inherits in the metadata.

Eigenschaften für abgeleitete Klassen PropertyMetadata von werden in der Regel im Objektmodell als Lese-/Schreibzugriff definiert.Properties on 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