Binding Oluşturucular

Tanım

Aşırı Yüklemeler

Binding()

Sınıfının yeni bir örneğini oluşturur ve başlatır Binding .

Binding(String, BindingMode, IValueConverter, Object, String, Object)

Sınıfının yeni bir örneğini oluşturur ve başlatır Binding .

Binding()

Sınıfının yeni bir örneğini oluşturur ve başlatır Binding .

public Binding ();

Şunlara uygulanır

Binding(String, BindingMode, IValueConverter, Object, String, Object)

Sınıfının yeni bir örneğini oluşturur ve başlatır Binding .

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

Parametreler

path
String

Özellik yolu.

mode
BindingMode

Bağlama modu. Bu özellik isteğe bağlıdır. Default varsayılan değerdir.

converter
IValueConverter

Dönüştürücü. Bu parametre isteğe bağlıdır. null varsayılan değerdir.

converterParameter
Object

Dönüştürücüye geçirilecek Kullanıcı tanımlı bir parametre. Bu parametre isteğe bağlıdır. null varsayılan değerdir.

stringFormat
String

Dize biçimi. Bu parametre isteğe bağlıdır. null varsayılan değerdir.

source
Object

Bu bağlama için kaynak olarak kullanılan nesne. Bu parametre isteğe bağlıdır. null varsayılan değerdir.

Açıklamalar

Aşağıdaki örnek, bir BindingMode ve Converter ile bir özelliğe nasıl bir bağlamanın ayarlanacağını göstermektedir:

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.

Şunlara uygulanır