FrameworkPropertyMetadata.BindsTwoWayByDefault プロパティ

定義

プロパティが既定で双方向をバインドするかどうかを示す値を取得または設定します。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

プロパティ値

既定でこのメタデータが存在する依存関係プロパティが双方向をバインドする場合は、true。それ以外の場合は、falsetrue if the dependency property on which this metadata exists binds two-way by default; otherwise, false. 既定値は、false です。The default is false.

例外

メタデータがシールされるよう、かつメタデータのプロパティを設定できないように、メタデータは依存関係プロパティの操作に既に適用されています。The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

次の例では、さまざまな依存関係プロパティフィールドから既定のメタデータをFrameworkPropertyMetadata取得し、その中のさまざまなプロパティの値を照会します。また、情報を使用して、"メタデータブラウザー" を実装するテーブルを設定します。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")

注釈

このプロパティがに設定さtrueれていない場合、既定では、 Bindingコンストラクターまたはそれに相当XAMLXAMLする構文の既定の動作に基づいて、バインドの更新が一方向になります。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.

既存の要素では、通常、このプロパティがメタtrueデータのに設定されています。依存関係プロパティの場合は、状態Selector.IsSelectedがレポートされ、ユーザー操作によって変更可能になります (たとえば、)。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.

このプロパティは、一般に依存関係プロパティの既定のバインディング更新特性のみを報告します。This property only reports the default binding update characteristics of the dependency property in general. インスタンスでこのプロパティに設定されたバインディングでは、 Modeバインディングのプロパティをローカルに設定し、この既定値を変更できます。Any binding set to this property on an instance can locally set the Mode property of the binding and change this default.

PropertyMetadata派生クラスのプロパティは、通常、読み取り/書き込み可能としてオブジェクトモデルで定義されます。Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. これは、インスタンスの初期化後に調整できるようにするためです。This is so they can be adjusted after initialization of the instance. ただし、 Register、、またはOverrideMetadataの呼び出しの一部としてメタAddOwnerデータが使用された後は、プロパティシステムによって、メタデータインスタンスとメタデータの詳細を伝達するプロパティが不変と見なされるようになります。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. このメタデータインスタンスのがIsSealed trueの後にこのプロパティを設定しようとすると、例外が発生します。Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

XAML テキストの使用XAML Text Usage

このクラスのメンバーは、通常、でXAMLXAMLは使用されません。Members of this class are not typically used in XAMLXAML.

適用対象

こちらもご覧ください