У меня есть приложение MVVM, которое я пытаюсь переместить в современный пользовательский интерфейс, но я не могу понять, что такое Навигация Сервис ...Современный пользовательский интерфейс WPF - ручная навигационная страница (из ViewModel или View Control code-behind)
В принципе, моя ViewModel является ObservableCollection с методом AddItem, как ICommand
. Когда этот метод выполняется, я хочу, чтобы вернуться к первой Рынок Mui группы 1 Link \ Page, вот пример сниппет современного пользовательского интерфейса WPF ...
<mui:ModernWindow ...>
<mui:ModernWindow.MenuLinkGroups>
<mui:LinkGroup DisplayName="Open Work">
<mui:LinkGroup.Links>
<mui:Link DisplayName="Current Activity" Source="/Pages/ActivityPage.xaml" />
<mui:Link DisplayName="Activity Queue" Source="/Pages/Queue.xaml" />
</mui:LinkGroup.Links>
</mui:LinkGroup>
<mui:LinkGroup DisplayName="Search" >
<mui:LinkGroup.Links>
<mui:Link DisplayName="Customers" Source="/Pages/SearchPage.xaml" />
</mui:LinkGroup.Links>
</mui:LinkGroup>
</mui:ModernWindow.MenuLinkGroups>
Так в основном, из «SearchPage.xaml», выполняется ICommand «AddItem», и я хочу немедленно переключиться на «ActivityPage.xaml» (в группе «Открыть работу»).
В идеале, я хотел бы сделать это из ViewModel, но я не возражаю против добавления обработчика события CollectionChanged
и вручную установки страницы, но образцы NavigationService (here) мне не помогли этот один из ...
В качестве последнего средства я добавил MVVM Light от Nuget, и я попытался реализовать IModernNavigationService в моей модели ViewModel, но я не могу понять, как заставить ViewModelLocator работать.