TreeViewItem発行が2回発行されました
-
28-10-2019 - |
質問
さまざまなアイテムがあるツリービューがあります。アイテムは、発行されたプロパティが私のVMに発行されたブールにバインドされるようにスタイルが付けられています。
ツリービューアイテムをクリックするたびに、このVMプロパティは2回呼び出され、最初に値== falseでvalue == trueで呼び出されます。
これは通常の動作だと思いますが、なぜ同じように排出されたプロパティが拘束されており、一度だけ呼ばれていることを考えると、理由はわかりません。
ありがとう
解決
その理由は、アイテムを選択すると、最初に古いアイテムが選択され、新しいアイテムが選択されることです。これにより、最初のfalseの呼び出しが行われ、2番目のTrueが発生します。
おそらく、デバッグ中は、ビューモデルのDisplayNameまたは同様のプロパティをチェックして、毎回どのアイテムが変更されているかを確認して、これが実際にそうであるかどうかを確認してください。
同様に、ノードを展開すると、他のノードが崩壊する必要はありません。したがって、拡張しようとしたノードを単純に展開します(Expandedの場合はtrueを渡します)。
他のヒント
この理由は、泡立つイベントです。
イベントが発生すると、処理されるまで「バブル」になります。
3レベルのアイテムを選択して検証できます。
設定するだけです e.Handled = true
;
ofir
所属していません StackOverflow