TreeView
の数を含むを持っていますTreeViewItems
。それぞれTreeViewItem
に水平方向が含まれ、水平方向StackPanel
には画像とラベルが含まれます。
ユーザーがTreeViewItemをクリックすると、その参照を取得したいと思いますTreeViewItem
。TreeViewItem
代わりに、ユーザーがクリックした部分に応じて、ソースがラベルまたは画像として返されます。
これは厳密にはTreeViewItemがクリックされるたびに発生する必要がある操作であるため、selectedItemChangedイベントを使用できません。
これが私のXAMLです:
<TreeView DockPanel.Dock="Left"
Name="tvSchema"
AllowDrop="True"
TreeViewItem.PreviewMouseLeftButtonDown="tvSchema_PreviewMouseLeftButtonDown">
</TreeView>
そして、ユーザーが1つをクリックしたときに、選択したTreeViewItemを取得しようとするコードは次のとおりです。
private void tvSchema_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
object x = e.OriginalSource; //Returns TextBlock
object y = e.Source; //Returns Label
object z = sender; //Returns TreeView
}
実際のTreeViewItemを取得するにはどうすればよいですか?