I\'d like to get an event for any expansion of a treeviewitem in my treeview.
The reason for this, a bit unrelated to the original question: I am creating a tree th
You can use the TreeViewItem.Expanded
event as an attached event :
<TreeView TreeViewItem.Expanded="TreeViewItem_Expanded"
ItemsSource="{Binding}">
...
</TreeView/>
In code-behind, you can identify the TreeViewItem
that initiated the event using the OriginalSource
property :
private void TreeViewItem_Expanded(object sender, RoutedEventArgs e)
{
TreeViewItem tvi = e.OriginalSource as TreeViewItem;
if (tvi != null)
{
MessageBox.Show(string.Format("TreeNode '{0}' was expanded", tvi.Header));
}
}