В SelectedItem приходит Vm из которой контрол достает данные. Но как мне получить сам контрол, а не его Vm?
private void AssociatedObject_DragOver(object sender, DragEventArgs e)
{
var selectedItem = this.AssociatedObject.SelectedItem;
var module = selectedItem as ModuleVm;
if (module != null)
{
//сделать IsSelected = false;
}
}
Ответ
Проще всего должно быть получить TreeViewItem по VM отдельного элемента так:
(TreeViewItem)treeView.ItemContainerGenerator.ContainerFromItem(vm)
Отталкиваясь от него, можно либо найти поиском в глубину ItemTemplate, или работать с контейнером непосредственно.
Комментариев нет:
Отправить комментарий