在使用模板10的UWP應用程序中,我們有一個管理頁面。管理頁面在一個框架內有兩個頁面,AdminSettings1和AdminSettings2。我們希望在框架中的AdminSettings1和AdminSettings2之間導航,但是我們發現我們到達目標頁面,但失去了包含頁面。使用模板10在框架之間導航MVVM
我們如何使用Template 10 MVVM在一幀內的頁面之間導航而不會丟失包含頁面?
的XAML(略):
<SplitView Grid.Row="1"
x:Name="AdminSplitView"
IsPaneOpen="True"
DisplayMode="Inline">
<SplitView.Pane>
<Grid>
<ListView SelectionMode="Single"
Name="AdminListBox">
<ListViewItem Name="AdminSettings1"
IsSelected="True"
Tapped="{x:Bind AdminViewModel.GoToAdminSettings1}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="Settings1"/>
</StackPanel>
</ListViewItem>
<ListViewItem Name="AdminSettings2"
Tapped="{x:Bind AdminViewModel.GoToJobformSettings2}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="Settings2"/>
</StackPanel>
</ListViewItem>
</ListView>
</Grid>
</SplitView.Pane>
<SplitView.Content>
<Frame Name="AdminFrame" />
</SplitView.Content>
</SplitView>
我們到達AdminPage這樣
GoToAdmin() => NavigationService.Navigate(typeof(Views.AdminPage));
在AdminPageViewModel我們轉到AdminPage2這樣
public void GoToAdmin2() => NavigationService.Navigate(typeof(Views.AdminPage2));
但失去了含管理頁面
我參考Other examples of calling Navigate的T10文檔。此選項可以瀏覽網頁機器人失去包含頁面
// from inside any window
var nav = WindowWrapper.Current().NavigationServices.FirstOrDefault();
nav.Navigate(typeof(Views.AdminPage2));
我無法測試這個例子中的文檔中,因爲我不明白的地方MyFrame來自
// from/with a reference to a Frame
var nav = WindowWrapper.Current(MyFrame).NavigationServices.FirstOrDefault();
nav.Navigate(typeof(Views.DetailPage), this.Value);
我們如何內頁面之間導航一個使用Template 10 MVVM的框架?
謝謝@Vladimir博爾沙科夫但我試圖使用模板10導航服務。 – Vague