次の問題があります。
私の TreeView では、ユーザーが TreeView ではなく TreeViewItem をクリックしたときに、独自の deselect() メソッドを呼び出して、選択解除機能を追加しました。ここに私の TreeView メソッドがあります:
public void deselectAll()
{
TreeViewItem item = SelectedItem as TreeViewItem;
if (item != null)
{
this.Focus();
item.IsSelected = false;
}
}
私の問題は、選択を解除した後に TreeViewItem を再選択できないことです。TreeView 自体に焦点を合わせるとこの問題は解決するはずですが、そうではありません。また、「Focus()」を「IsSelected = false」の前後に配置しても問題ありません。
なぜこれが機能しないのか、誰にも分かりますか? 任意の考えをいただければ幸いです。