У меня есть graph, отображающий несколько моделей. Внешний вид этих режимов просмотра на графике определяется набором DataTemplates.Установите выбранный элемент из DataTemplate
Я хочу сделать представление «Мастер-деталь», так что, когда выбрана одна из моделей просмотра на графике, детали отображаются на другой части пользовательского интерфейса. Проблема, с которой я сталкиваюсь, - это захват щелчка мыши по графику.
Я могу добавить свойство к своему графу под названием «SelectedItem», а затем привязать к нему представление деталей, но я не знаю, как установить базы SelectedItem на клик на DataTemplate.
Типичная DataTemplate показано на графике:
<!-- The master control -->
<Grid>
<Grid.Resources>
<DataTemplate DataType="{x:Type prove:JobVM}">
<!-- the view of this type in the Graph -->
</DataTemplate>
</Grid.Resources>
<prove:CustomGraph Graph={Binding JobGraph}/>
</Grid>
<!-- The detail control -->
<ContentControl Content="HOW DO I SET CONTENT TO BE THE SELECTED ITEM IN THE GRAPH?" >
<ContentControl.Resources>
<DataTemplate DataType="{x:Type prove:JobVM}">
<!-- the detail view -->
</DataTemplate>
</ContentControl.Resources>
</ContentControl>
Любые идеи?
Спасибо, это работает. Любая идея, если есть способ сделать это с помощью команды или в разметке, а не для кастования и получения DataContext в обработчике событий? Я бы предпочел это, но я понимаю, что использую настраиваемый элемент управления, который я не разрабатывал, поэтому это может усложнить ситуацию. –