Binding Konstruktor
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
Binding() |
Membuat dan menginisialisasi instans Binding baru kelas. |
Binding(String, BindingMode, IValueConverter, Object, String, Object) |
Membuat dan menginisialisasi instans Binding baru kelas. |
Binding()
Binding(String, BindingMode, IValueConverter, Object, String, Object)
Membuat dan menginisialisasi instans Binding baru kelas.
public Binding (string path, Xamarin.Forms.BindingMode mode = Xamarin.Forms.BindingMode.Default, Xamarin.Forms.IValueConverter converter = default, object converterParameter = default, string stringFormat = default, object source = default);
new Xamarin.Forms.Binding : string * Xamarin.Forms.BindingMode * Xamarin.Forms.IValueConverter * obj * string * obj -> Xamarin.Forms.Binding
Parameter
- path
- System.String
Jalur properti.
- mode
- BindingMode
Mode pengikatan. Properti ini bersifat opsional. Defaultnya adalah Default.
- converter
- IValueConverter
Pengonversi. Parameter ini bersifat opsional. Defaultnya adalah null
.
- converterParameter
- System.Object
Parameter yang ditentukan pengguna untuk diteruskan ke konverter. Parameter ini bersifat opsional. Defaultnya adalah null
.
- stringFormat
- System.String
Format String. Parameter ini bersifat opsional. Defaultnya adalah null
.
- source
- System.Object
Objek yang digunakan sebagai sumber untuk pengikatan ini. Parameter ini bersifat opsional. Defaultnya adalah null
.
Keterangan
Contoh berikut menunjukkan cara mengatur pengikatan ke properti dengan BindingMode dan Converter:
public class PersonViewModel
{
public string Name { get; set; }
public string Company { get; set; }
}
public class ReverseConverter : IValueConverter
{
public object Convert (object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var s = value as string;
if (s == null)
return value;
return new string (s.Reverse ().ToArray ());
}
public object ConvertBack (object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var s = value as string;
if (s == null)
return value;
return new string (s.Reverse ().ToArray ());
}
}
var label = new Label ();
PersonViewModel person;
label.BindingContext = person = new PersonViewModel { Name = "John Doe", Company= "Xamarin" };
label.SetBinding (Label.TextProperty, new Binding ("Name", mode: BindingMode.TwoWay, converter: new ReverseConverter ()));
Debug.WriteLine (label.Text); //prints "eoD nhoJ". ReverseConverter.Convert () is invoked in this case.
label.Text = "ooF";
Debug.WriteLine (person.Name); //prints "Foo". ReverseConverter.ConvertBack () is invoked in this case. The label Text change is propagated back as the BindingMode is TwoWay.