Freigeben über


Binding Konstruktoren

Definition

Überlädt

Binding()

Erstellt und initialisiert eine neue Instanz der Binding-Klasse.

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

Erstellt und initialisiert eine neue Instanz der Binding-Klasse.

Binding()

Erstellt und initialisiert eine neue Instanz der Binding-Klasse.

public Binding ();

Gilt für:

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

Erstellt und initialisiert eine neue Instanz der Binding-Klasse.

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

Der Eigenschaftspfad.

mode
BindingMode

Der Bindungsmodus. Diese Eigenschaft ist optional. Der Standardwert ist Default.

converter
IValueConverter

Der Konverter. Dieser Parameter ist optional. Der Standardwert ist null.

converterParameter
System.Object

Ein benutzerdefinierter Parameter, der an den Konverter übergeben werden soll. Dieser Parameter ist optional. Der Standardwert ist null.

stringFormat
System.String

Ein Zeichenfolgenformat. Dieser Parameter ist optional. Der Standardwert ist null.

source
System.Object

Ein Objekt, das als Quelle für diese Bindung verwendet wird. Dieser Parameter ist optional. Der Standardwert ist null.

Hinweise

Das folgende Beispiel zeigt, wie eine Bindung auf eine Eigenschaft mit einem BindingMode und Converter festgelegt wird:

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.

Gilt für: