2017-05-04 12 views
0

私は、アプリ全体からのビューで使用するバインド可能なプロパティの束を作成したいと考えています。デフォルトのフォントサイズ/ラベルの色 - そのようなもの。プロパティが変更されたとき、私はすべてのビューがこの変更を反映することを期待しています。これは可能ですか? xamlでこのようなプロパティを参照するにはどうすればよいですか?Xamarinのグローバルバインド可能なプロパティ

答えて

1

だから私はあなたがこの2つの方法について行くことができると思います。

1)動的リソースを使用します。 xamlファイルでは、StaticResourceと同じようにリソースを指定しますが、代わりにDynamicResourceを使用します。その後、コード内でリソース辞書を変更して、ビューを更新する必要があります。この例は、Petzoldの本の第10章にあります。(https://developer.xamarin.com/guides/xamarin-forms/creating-mobile-apps-xamarin-forms/

2)値コンバーターを使用してください。 xamlコントロールのプロパティをビューモデルのプロパティにバインドし、一般的な値または列挙型からUIビュー値に変換する値コンバーターを指定できます(Visibiltyやカラーなど)。値の例を見つけることができますコンバーターを第16章のペッツホルツブックに追加してください。

個人的には、プロパティが何らかの形でワークフローに関連していて、カスタマイズを表示しない限り、上記のオプション1を使用する必要があります。フォントサイズや色などを変更するためのコントロールをユーザーに提示している場合は、おそらくオプション2が良いでしょう。

+0

中古#1。よく働く。ありがとう! – user1334767

関連する問題