FrameworkPropertyMetadata.AffectsRender FrameworkPropertyMetadata.AffectsRender FrameworkPropertyMetadata.AffectsRender FrameworkPropertyMetadata.AffectsRender Property

Definition

Ruft einen Wert ab oder legt diesen fest, der angibt, ob sich eine Abhängigkeitseigenschaft möglicherweise in irgendeiner Weise (nicht speziell in Bezug auf Anordnung oder Messung, jedoch hinsichtlich eines erforderlichen Neuzeichnens) auf das allgemeine Layout auswirkt.Gets or sets a value that indicates whether a dependency property potentially affects the general layout in some way that does not specifically influence arrangement or measurement, but would require a redraw.

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

Eigenschaftswert

true, falls die Abhängigkeitseigenschaft, für die diese Metadaten vorhanden sind, sich auf das Rendering auswirkt, andernfalls false.true if the dependency property on which this metadata exists affects rendering; 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

FrameworkElementund FrameworkContentElement enthalten eine Implementierung von OnPropertyChanged , mit der effektive Wertänderungen an allen in einem Element vorhandenen Abhängigkeits Eigenschaften überwacht werden.FrameworkElement and FrameworkContentElement include an implementation of OnPropertyChanged that monitors effective value changes to all dependency properties that exist on an element. Im Rahmen dieser Logik wird durch Abhängigkeits Eigenschaften, die den effektiven Wert ändern und AffectsRender Metadaten haben true , bei denen auf festgelegt ist, eine verzögerte Anforderung initiiert, um die visuellen Elemente für dieses Element ungültig zu machen.As part of that logic, dependency properties that change effective value and have metadata with AffectsRender set to true will initiate a deferred request to invalidate the visuals for that element. Da diese Implementierung der WPF-Frameworkebene bereits vorhanden ist, müssen Sie in der Regel keine Abhängigkeits Eigenschaften AffectsRender mit suchen, es sei denn, Sie ersetzen oder ändern das Layoutverhalten der WPF-Frameworkebene erheblich.Because this WPF framework-level implementation is already in place, you typically do not need to look for dependency properties with AffectsRender unless you are substantially replacing or modifying the WPF framework-level layout behavior.

Benutzer OnPropertyChanged definierte Implementierungen können ein ähnliches Verhalten für Änderungen an Abhängigkeits Eigenschaften AffectsRender haben true, bei denen gleich ist.Custom OnPropertyChanged implementations might choose to have similar behavior for dependency property changes where AffectsRender is true.

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