問題タブ [itemcontainerstyle]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - データ テンプレートを使用して複数のタブの有効なプロパティを処理する方法は?
2 つの異なるユーザー コントロールを保持する 2 つのタブを持つウィンドウがあります。2 番目のタブへのナビゲーションを有効または無効にするためにIsEnabled、インターフェイスから両方の VM にプロパティを実装しIPageViewModelます。
がから Messenger サービスを介して をSelectedCustomer受信すると、IsEnabled ブール プロパティは true に設定されます。CustomerOrdersViewModelCustomerDetailsViewModel
最初のビューでデータ グリッドから顧客を選択すると、2 番目のタブが有効になるため、これまでのところこの方法は機能しています。しかし問題は、最初のタブを選択して最初のビューに戻ろうとすると、それが無効になっていることです。
これは特定のナビゲーションの問題のスクリーン キャストです。
メッセンジャーを使用して IsEnabled プロパティを true に設定すると、両方のタブが有効になると思った理由がわかりません。
ここでこの問題について誰かアドバイスはありますか?
CustomerDetailsViewModelメッセンジャー経由で selectedCustomer を送信します。
次にCustomerDetailsViewModel、SelectedCustomer が渡されたため、IsEnabled プロパティが true に設定されます。
これは、両方のユーザー コントロールと、それぞれに対して生成されたタブを保持する ApplicationView xaml です。
c# - ItemContainerStyle からのスタイル セッターの UWP バインディングが機能しない
この例のように、スタイル セッターにバインディングを設定する BindingHelper を作成します。
しかし、それは機能しません。例を完成させたり、エラーを見つけたりするのを手伝ってくれる人はいますか?
そして、パブリック クラス BindingHelper のコード ビハインド
wpf - トリガーで使用するために ItemContainerStyle 内の ViewModel プロパティにバインドします
DataContext が ViewModel である TreeView があります。ViewModel にはプロパティがありますMyProp。TreeView 内で、DataTrigger を使用して ItemContainerStyle を定義しました。
ただし、ItemContainerStyle には、ViewModel ではなく DataContext として Item があるため、DataTrigger の Binding は機能しません。では、バインド先の Binding をどのように指定すればよいViewModel.MyPropでしょうか? Styles と Triggers で設定できないDataContextようですが、他にどのようにすればよいですか?