BindableObject.SetValue メソッド

定義

オーバーロード

SetValue(BindableProperty, Object)

指定したプロパティの値を設定します。

SetValue(BindablePropertyKey, Object)

propertyKey の値を設定します。

SetValue(BindableProperty, Object)

指定したプロパティの値を設定します。

public void SetValue (Xamarin.Forms.BindableProperty property, object value);
member this.SetValue : Xamarin.Forms.BindableProperty * obj -> unit

パラメーター

property
BindableProperty

値を割り当てる BindableProperty。

value
Object

設定する値。

注釈

GetValue(BindableProperty)および SetValue は、によって実装されるプロパティの値にアクセスするために使用され BindableProperty ます。 つまり、通常、アプリケーション開発者は、 public get アクセサーがの結果を適切な型にキャストし、それを返すプロパティを定義して、バインドされたプロパティのインターフェイスを提供し GetValue(BindableProperty) set ます。このアクセサーは、を使用して、 SetValue 適切なプロパティの値を設定します。 アプリケーション開発者は、バインドされたプロパティのインターフェイスを定義するパブリックプロパティで他の手順を実行する必要はありません。

次の例は、バインディングが実行時に作成されるときに、ターゲットプロパティで提供される実装のバインド可能なプロパティインターフェイスを作成する方法を示しています。

class MyBindable : BindableObject
{
    public static readonly BindableProperty MyProperty = 
      BindableProperty.Create<MyBindable, string> (w => w.My, default(string));

    public string My {
      get { return (string)GetValue (MyProperty); }
      set { SetValue (MyProperty, value); } 
    }
}

適用対象

SetValue(BindablePropertyKey, Object)

propertyKey の値を設定します。

public void SetValue (Xamarin.Forms.BindablePropertyKey propertyKey, object value);
member this.SetValue : Xamarin.Forms.BindablePropertyKey * obj -> unit

パラメーター

propertyKey
BindablePropertyKey

値を割り当てる BindablePropertyKey。

value
Object

設定する値。

注釈

このメソッドと BindablePropertyKey は、制限付きの書き込みアクセス権を持つ BindableProperties を実装する場合に便利です。 書き込みアクセスは、BindablePropertyKey のスコープに制限されます。

次の例は、"internal" 書き込みアクセスを使用して BindableProperty を宣言する方法を示しています。

class MyBindable : BindableObject
{
  internal static readonly BindablePropertyKey MyPropertyKey = 
    BindableProperty.CreateReadOnly<MyBindable, string> (w => w.My, default(string));
  public static readonly BindableProperty MyProperty = MyPropertyKey.BindableProperty;

  public string My {
    get { return (string)GetValue (MyProperty); }
    internal set { SetValue (MyPropertyKey, value); } 
  }
}

適用対象