FrameworkPropertyMetadata.AffectsRender プロパティ

定義

依存関係プロパティが一般的なレイアウトに何らかの形で影響する (配置や測定に特に影響を与えないが再描画が必要になる) 可能性があるかどうかを示す値を取得または設定します。

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

プロパティ値

Boolean

このメタデータが存在する依存関係プロパティがレンダリングに影響を与える場合は、true。それ以外の場合は、false。 既定値は、false です。

例外

メタデータがシールされるよう、かつメタデータのプロパティを設定できないように、メタデータは依存関係プロパティの操作に既に適用されています。

次の例では、さまざまな依存関係プロパティ フィールドから既定のメタデータを取得し、そのフィールド上のさまざまなプロパティの FrameworkPropertyMetadata 値をクエリし、その情報を使用してテーブルにデータを設定し、"メタデータ ブラウザー" を実装します。

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

注釈

FrameworkElement 要素 FrameworkContentElement に存在するすべての依存関係プロパティに対する有効な値の OnPropertyChanged 変更を監視する実装を含めます。 そのロジックの一部として、有効な値を変更し、メタデータ AffectsRender を設定した true 依存関係プロパティは、その要素のビジュアルを無効にする遅延要求を開始します。 この WPF フレームワーク レベルの実装は既に実施されているため、WPF フレームワーク レベルのレイアウト動作を大幅に置き換えたり変更したりする場合を除き、通常は依存関係プロパティ AffectsRender を検索する必要はありません。

カスタムOnPropertyChanged実装では、依存関係プロパティの変更に対して同様の動作をtrueAffectsRender選択する場合があります。

派生クラスの PropertyMetadata プロパティは、通常、オブジェクト モデルで読み取り/書き込みとして定義されます。 これは、インスタンスの初期化後に調整できるようにするためです。 ただし、メタデータが 、またはOverrideMetadataプロパティ システムへのRegisterAddOwner呼び出しの一部として使用されると、メタデータの詳細を伝えるメタデータ インスタンスとプロパティが不変と見なされるようになりました。 このメタデータ インスタンスの後IsSealedtrueにこのプロパティを設定しようとすると、例外が発生します。

XAML テキストの使用法

通常、このクラスのメンバーは XAML では使用されません。

適用対象

こちらもご覧ください