Можно ли привязать DataContext из UserControl к свойству
У меня есть пользовательский элемент управления, который я хотел бы использовать в двух разных контекстах. Пользовательскому элементу управления необходимо установить в свой DataContext экземпляр соответствующего ViewModel, который был создан родительским представлением / моделью представления.
Я надеялся на что-то вроде:
<local:Child DataContext="{Binding ChildViewModel}"/>
где ChildViewModel - это свойство ViewModel в стиле inpc, к которому привязана страница.
Это не похоже на работу. Можно ли назначить DataContext с помощью Binding?
1 ответ
Решение
Вероятно, было бы проще привязать ContentControl к вашему дочернему ViewModel следующим образом:
<ContentControl Content="{Binding ChildViewModel}" />
..и затем есть DataTemplate для применения вашего локального: дочернего вида, как это
<DataTemplate DataType="{x:Type local:ChildViewModel}">
<local:Child />
</DataTemplate>