2011-01-26 4 views
0

私はいくつかの構造を有する階層ツリービューオブジェクトを有する:WPFツリービューで「バブル」を選択することを拒否する方法は?

  • メインレベル
    • 第二レベル1
    • 第二レベル3
    • 第レベルを2

問題は次のとおりです。第2レベルのアイテムを選択すると、メインレベルアイテムの「選択済み」イベントが発生します。どうしたら拒否できますか?ブーリアンフラグと元のソースプロパティでいくつかのトリックを試してみましたが、失敗しました。 e.Handled = trueまた私に結果を与えないでください。

アドバイスありがとうございました。私の悪い英語を申し訳ありません。

+0

可能であれば、関連するXAMLとすべてのコードビハインドを投稿してください。 – Nawaz

+0

私はバグを見つける。メインレベルのイベントは、別のGUIスレッドでスプラッシュ画面を読み込むときに起動します(マニュアル位置に別のウィンドウが表示されます)。私がspashscreenの呼び出しをコメントするとき、それは正常になった:(。 – Dmitriy

答えて

0

問題は私のコードにいくつかの奇妙なバグがありました。アプリでスプラッシュスクリーンを使用すると、メインレベルのイベントが発生します。スプラッシュスクリーンを無効にすると、それは完全に動作します e.Handled = true; トリック。

私は0msの間、項目選択されたevendハンドラの最後に2番目のスプラッシュスクリーンを呼び出し、動作します。

ありがとうございます。

0

イベントは、AddHandlerを使用して追加され、e.Handledフラグは無視されます。イベントのSourceがOriginalSourceと等しいかどうかを確認できますか?もしそうなら、ハンドラを終了しますか?

関連する問題