I have a TreeView
filled with items of my custom type ToolbarTreeItem
. Now when the user clicks on an item, I want to know which item was clicked in the MainViewModel
.
I want to achieve this without code behind, but with a RelayCommand
.
So how do I pass the selected item to the RelayCommand
without having to use a standard event, which leads to code behind?
Code-snippet in MainViewModel.cs:
private ToolbarTreeItem _selectedItem;
private RelayCommand<ToolbarTreeItem> _changeSelectedItem;
public RelayCommand<ToolbarTreeItem> ChangeSelectedItem
{
get
{
return _changeSelectedItem ?? (_changeSelectedItem = new RelayCommand<ToolbarTreeItem>(selectedItem =>
{
_selectedItem = selectedItem;
}));
}
}
Xaml-snippet in Toolbar.xaml:
<TreeView SelectedItemChanged="???" />