Binding Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ü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()
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.