Я пытался реализовать это некоторое время и до сих пор не смог этого сделать, несмотря на то, что чувствовал, что это должно быть что-то легкое.
Трудность заключается в том, что я реализовал приложение WPF с использованием шаблона MVVM. Теперь это моя первая попытка как шаблона, так и фреймворка, поэтому почти гарантировано, что я допустил ошибки, пытаясь следовать рекомендациям MVVM.
Моя реализация
У меня есть три представления с соответствующими им моделями представления (проводными с использованием метода AutoWireViewModel
Prism). MainView
имеет TabControl
с двумя TabItem
с, каждый из которых содержит контейнер Frame
с Source
, установленным на один из двух других View
с. Следующий код является выдержкой из MainView
:
<TabControl Grid.Row="1" Grid.Column="1">
<TabItem Header="Test">
<!--TestView-->
<Frame Source="View1.xaml"/>
</TabItem>
<TabItem Header="Results">
<!--ResultsView-->
<Frame Source="View2.xaml"/>
</TabItem>
</TabControl>
Моя проблема
Каждый раз, когда кто-то меняет конкретный TabItem
, я хотел бы запустить метод, который обновляет один из элементов управления WPF, включенных в этот View
. Метод уже реализован и привязан к Button
, но в идеале кнопка не нужна, я хотел бы иметь какое-то Event
, чтобы это произошло.
Я заранее благодарен за всю помощь.