BindableObjectExtensions.SetBinding 메서드

정의

오버로드

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)

식에서 바인딩을 만들고 적용합니다.Creates and applies a binding from an expression.

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입니다.The BindableProperty on which to set a binding.

path
String

바인딩할 속성 경로를 나타내는 String입니다.A String indicating the property path to bind to.

mode
BindingMode

바인딩의 BindingMode입니다.The BindingMode for the binding. 이 매개 변수는 선택적 요소입니다.This parameter is optional. 기본값은 Default입니다.Default is Default.

converter
IValueConverter

바인딩의 IValueConverter입니다.An IValueConverter for the binding. 이 매개 변수는 선택적 요소입니다.This parameter is optional. 기본값은 null입니다.Default is null.

stringFormat
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)

경고

이 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입니다.The BindableObject.

targetProperty
BindableProperty

바인딩할 BindablePropertyThe BindableProperty to bind to

sourceProperty
Expression<Func<TSource,Object>>

원본 경로를 검색하는 데 사용되는 식입니다.An expression used to retrieve the source path.

mode
BindingMode

바인딩용 BindingMode입니다.The BindingMode for the binding. 이 매개 변수는 선택적 요소입니다.This parameter is optional. 기본값은 Default입니다.Default is Default.

converter
IValueConverter

바인딩용 IValueConverter입니다.An IValueConverter for the binding. 이 매개 변수는 선택적 요소입니다.This parameter is optional. 기본값은 null입니다.Default is null.

stringFormat
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"

적용 대상