Bagikan melalui


BindableObjectExtensions.SetBinding Metode

Definisi

Overload

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Membuat dan menerapkan pengikatan ke properti.

SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String)
Kedaluwarsa.

Membuat dan menerapkan pengikatan dari ekspresi.

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Membuat dan menerapkan pengikatan ke properti.

public static void SetBinding (this Xamarin.Forms.BindableObject self, Xamarin.Forms.BindableProperty targetProperty, string path, Xamarin.Forms.BindingMode mode = Xamarin.Forms.BindingMode.Default, Xamarin.Forms.IValueConverter converter = default, string stringFormat = default);
static member SetBinding : Xamarin.Forms.BindableObject * Xamarin.Forms.BindableProperty * string * Xamarin.Forms.BindingMode * Xamarin.Forms.IValueConverter * string -> unit

Parameter

targetProperty
BindableProperty

BindableProperty untuk mengatur pengikatan.

path
System.String

Menunjukkan System.String jalur properti yang akan diikat.

mode
BindingMode

untuk BindingMode pengikatan. Parameter ini bersifat opsional. Defaultnya adalah Default.

converter
IValueConverter

Untuk IValueConverter pengikatan. Parameter ini bersifat opsional. Defaultnya adalah null.

stringFormat
System.String

String yang digunakan sebagai stringFormat untuk pengikatan. Parameter ini bersifat opsional. Defaultnya adalah null.

Keterangan

Contoh berikut menunjukkan cara menggunakan metode ekstensi untuk mengatur pengikatan.

public class PersonViewModel
{
    public string Name { get; set; }
    public string Company { get; set; }
}

// ...

var vm = new PersonViewModel {
    Name = "John Doe", 
    Company = "Xamarin"
}

var label = new Label ();
label.SetBinding (Label.TextProperty, "Name"); // "Name" is the property on the view model
label.BindingContext = vm;

Debug.WriteLine (label.Text); // prints "John Doe"

Berlaku untuk

SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String)

Perhatian

API ini sudah tidak digunakan lagi.

Membuat dan menerapkan pengikatan dari ekspresi.

[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
[System.Obsolete]
public static void SetBinding<TSource> (this Xamarin.Forms.BindableObject self, Xamarin.Forms.BindableProperty targetProperty, System.Linq.Expressions.Expression<Func<TSource,object>> sourceProperty, Xamarin.Forms.BindingMode mode = Xamarin.Forms.BindingMode.Default, Xamarin.Forms.IValueConverter converter = default, string stringFormat = default);
static member SetBinding : Xamarin.Forms.BindableObject * Xamarin.Forms.BindableProperty * System.Linq.Expressions.Expression<Func<'Source, obj>> * Xamarin.Forms.BindingMode * Xamarin.Forms.IValueConverter * string -> unit

Jenis parameter

TSource

Jenis sumber.

Parameter

self
BindableObject

The BindableObject.

targetProperty
BindableProperty

BindableProperty yang akan diikat ke

sourceProperty
System.Linq.Expressions.Expression<System.Func<TSource,System.Object>>

Ekspresi yang digunakan untuk mengambil jalur sumber.

mode
BindingMode

BindingMode untuk pengikatan. Parameter ini bersifat opsional. Defaultnya adalah Default.

converter
IValueConverter

IValueConverter untuk pengikatan. Parameter ini bersifat opsional. Defaultnya adalah null.

stringFormat
System.String

String yang digunakan sebagai stringFormat untuk pengikatan. Parameter ini bersifat opsional. Defaultnya adalah null.

Atribut
System.ComponentModel.EditorBrowsableAttribute System.ObsoleteAttribute

Keterangan

Metode ekstensi ini menggunakan Ekspresi alih-alih jalur untuk membuat dan mengatur pengikatan. Menggunakan Ekspresi lebih ramah untuk pemfaktoran ulang.

Contoh berikut ini mengilustrasikan pengaturan pengikatan menggunakan metode ekstensi.

public class PersonViewModel
{
    public string Name { get; set; }
    public string Company { get; set; }
}

// ...

var vm = new PersonViewModel {
    Name = "John Doe", 
    Company = "Xamarin"
};

var label = new Label ();
label.SetBinding<PersonViewModel> (Label.TextProperty, vm => vm.Name);  // "Name" is the property on the view model
label.BindingContext = vm;

Debug.WriteLine (label.Text); // prints "John Doe"

Berlaku untuk