Share via


Binding Constructores

Definición

Sobrecargas

Binding()

Crea e inicializa una instancia de la clase Binding.

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

Crea e inicializa una instancia de la clase Binding.

Binding()

Crea e inicializa una instancia de la clase Binding.

public Binding ();

Se aplica a

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

Crea e inicializa una instancia de la clase 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

Parámetros

path
System.String

Ruta de acceso de la propiedad.

mode
BindingMode

Modo de enlace. Esta propiedad es opcional. El valor predeterminado es Default.

converter
IValueConverter

Convertidor. Este parámetro es opcional. El valor predeterminado es null.

converterParameter
System.Object

Parámetro definido por el usuario que pasar al convertidor. Este parámetro es opcional. El valor predeterminado es null.

stringFormat
System.String

Formato de cadena. Este parámetro es opcional. El valor predeterminado es null.

source
System.Object

Objeto utilizado como origen de este enlace. Este parámetro es opcional. El valor predeterminado es null.

Comentarios

En el ejemplo siguiente se muestra cómo establecer un enlace en una propiedad con bindingMode y 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.

Se aplica a