BindableObjectExtensions.SetBinding BindableObjectExtensions.SetBinding Method

Определение

Перегрузки

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Создает и применяет привязку к свойству.Creates and applies a binding to a property.

SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String) SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String)

Создает и применяет привязку из выражения.Creates and applies a binding from an expression.

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Создает и применяет привязку к свойству.Creates and applies a binding to a property.

public static void SetBinding (this Xamarin.Forms.BindableObject self, Xamarin.Forms.BindableProperty targetProperty, string path, Xamarin.Forms.BindingMode mode = Xamarin.Forms.BindingMode.Default, Xamarin.Forms.IValueConverter converter = null, string stringFormat = null);
static member SetBinding : Xamarin.Forms.BindableObject * Xamarin.Forms.BindableProperty * string * Xamarin.Forms.BindingMode * Xamarin.Forms.IValueConverter * string -> unit

Параметры

targetProperty
BindableProperty BindableProperty

Объект BindableProperty, для которого устанавливается привязка.The BindableProperty on which to set a bindinge.

path
String String

Строка String, содержащая путь к свойству, к которому устанавливается привязка.A String indicating the property path to bind to.

mode
BindingMode BindingMode

BindingMode для привязки.The BindingMode for the binding. Этот параметр является необязательным.This parameter is optional. Значение по умолчанию — Default.Default is Default.

converter
IValueConverter IValueConverter

IValueConverter для привязки.An IValueConverter for the binding. Этот параметр является необязательным.This parameter is optional. Значение по умолчанию — null.Default is null.

stringFormat
String String

Строка, используемая как stringFormat для привязки.A string used as stringFormat for the binding. Этот параметр является необязательным.This parameter is optional. Значение по умолчанию — null.Default is null.

Комментарии

В следующем примере показано, как использовать метод расширения для установки привязки.The following example shows how to use the extension method to set a binding.


var label = new Label ();
label.SetBinding (Label.TextProperty, "Name");
label.BindingContext = new {Name = "John Doe", Company = "Xamarin"};
Debug.WriteLine (label.Text); //prints "John Doe"

SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String) SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String)

Предупреждение

Этот API устарел.

Создает и применяет привязку из выражения.Creates and applies a binding from an expression.

[System.Obsolete]
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
public static void SetBinding<TSource> (this Xamarin.Forms.BindableObject self, Xamarin.Forms.BindableProperty targetProperty, System.Linq.Expressions.Expression<Func<TSource,object>> sourceProperty, Xamarin.Forms.BindingMode mode = Xamarin.Forms.BindingMode.Default, Xamarin.Forms.IValueConverter converter = null, string stringFormat = null);
static member SetBinding : Xamarin.Forms.BindableObject * Xamarin.Forms.BindableProperty * System.Linq.Expressions.Expression<Func<'Source, obj>> * Xamarin.Forms.BindingMode * Xamarin.Forms.IValueConverter * string -> unit

Параметры типа

TSource

Тип источника.The source type.

Параметры

self
BindableObject BindableObject

Объект BindableObject.The BindableObject.

targetProperty
BindableProperty BindableProperty

Объект BindableProperty, к которому требуется выполнить привязку.The BindableProperty to bind to

sourceProperty
Expression<Func<TSource,Object>>

Выражение, используемое для получения исходного пути.An expression used to retrieve the source path.

mode
BindingMode BindingMode

Режим BindingMode для привязки.The BindingMode for the binding. Этот параметр является необязательным.This parameter is optional. Значение по умолчанию — Default.Default is Default.

converter
IValueConverter IValueConverter

Интерфейс IValueConverter для привязки.An IValueConverter for the binding. Этот параметр является необязательным.This parameter is optional. Значение по умолчанию — null.Default is null.

stringFormat
String String

Строка, используемая как stringFormat для привязки.A string used as stringFormat for the binding. Этот параметр является необязательным.This parameter is optional. Значение по умолчанию — null.Default is null.

Комментарии

Этот метод расширения используется выражение вместо пути к создает и задает привязки.This extension method uses Expression instead of path to creates and sets bindings. С помощью выражений является более понятной рефакторинга.Using Expressions is more refactoring friendly.

В следующем примере показан параметр привязки, с помощью метода расширения.This following example illustrates the setting of a binding using the extension method.


public class PersonViewModel
{
  public string Name { get; set; }
  public string Company { get; set; }
}
    
var label = new Label ();
label.SetBinding<PersonViewModel> (Label.TextProperty, vm => vm.Name);
label.BindingContext = new PersonViewModel {
  Name = "John Doe", 
  Company = "Xamarin"
};
Debug.WriteLine (label.Text); //prints "John Doe"

Применяется к