Binding.Create<TSource>(Expression<Func<TSource,Object>>, BindingMode, IValueConverter, Object, String) Method

Definition

Caution

This API is now deprecated.

This is a convenient factory method to create a binding from an expression, instead of a property name. This api is more resilient to refactoring.

[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
[System.Obsolete]
public static Xamarin.Forms.Binding Create<TSource> (System.Linq.Expressions.Expression<Func<TSource,object>> propertyGetter, Xamarin.Forms.BindingMode mode = Xamarin.Forms.BindingMode.Default, Xamarin.Forms.IValueConverter converter = default, object converterParameter = default, string stringFormat = default);
static member Create : System.Linq.Expressions.Expression<Func<'Source, obj>> * Xamarin.Forms.BindingMode * Xamarin.Forms.IValueConverter * obj * string -> Xamarin.Forms.Binding

Type Parameters

TSource

The type of the source of the binding.

Parameters

propertyGetter
Expression<Func<TSource,Object>>

An expression used to retrieve the binding path.

mode
BindingMode

The binding mode. This property is optional. Default is Default.

converter
IValueConverter

The converter. This parameter is optional. Default is null.

converterParameter
Object

An user-defined parameter to pass to the converter. This parameter is optional. Default is null.

stringFormat
String

A String format. This parameter is optional. Default is null.

Returns

Binding

A newly created binding.

Attributes

Remarks

The following example shows how to set a binding to a property :

public class PersonViewModel
{
  public string Name { get; set; }
  public string Company { get; set; }
}

var label = new Label ();
PersonViewModel person;
label.BindingContext = person = new PersonViewModel { Name = "John Doe", Company = "Microsoft" };
label.SetBinding (Label.TextProperty, Binding.Create<PersonViewModel> (vm => vm.Name));
Debug.WriteLine (label.Text); //prints "John Doe".

Applies to