2017-09-03 22 views

答えて

4

BindingおよびBindingObjectは、Xamarin Formsフレームワークに付属するデータバインディングプロセスの一部です。

データバインディングは、ターゲット(通常はSwitchIsToggledなどの制御プロパティ)とソース(通常はプロパティ変更通知と共にビジネスロジックを組み込んだビューモデル)との間の接続を確立するプロセスです。

enter image description here

あなたはターゲットUIコントロールとの間の接続を定義するBindingを使用し、それは、BindingContextプロパティを介して提供されたソース、として対応するビューモデルの。これは、Pathプロパティ(およびConverter、StringFormatなどのその他のパラメータ)を指定することで行います。

上記画像に言及した、例えば、この場合には、(順番にViewModelある)源としてBindingContextを用いEntry.TextViewModel.MyPropertyとの間の接続を確立するBindingを定義することができます。

BindingContextあなたが明示的になど、別のコントロールなどの代替ソース、静的リソースを指定しない限り、常に、このような結合のためのデフォルトの源と考えられている

例えば

<Switch IsToggled="{Binding IsEnabled}" /> 

バインディング接続を確立しますSwitchの間。 IsToggledおよびBindingContextIsEnabled

同様に、

<Switch IsToggled="{Binding IsEnabled, Source={x:Reference siblingControl}}" /> 

Switch間の結合接続を確立します。 IsToggledおよびsiblingControlIsEnabledBindingContextはこのバインディング接続の一部ではありません。

このarticleは、Xamarinフォームでの結合を学ぶのに適しています。もう1つの良いリソースは、公式文書herehereです。また、define bindings using markup-extensions in XAMLまたはextension methods in C#の方法についてもお読みになることをおすすめします。

関連する問題