【发布时间】:2015-10-16 00:53:21
【问题描述】:
我的应用正在使用 SplitView,它的内容是 Frame。我似乎无法弄清楚如何使用拆分视图中的按钮来更改框架中的页面。现在我正在尝试将SourcePageType 绑定到我的视图模型,但这不起作用。这是我的设置。
框架
<SplitView.Content>
<Frame x:Name="frame" SourcePageType="{Binding FrameSource}">
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition>
<NavigationThemeTransition.DefaultNavigationTransitionInfo>
<EntranceNavigationTransitionInfo/>
</NavigationThemeTransition.DefaultNavigationTransitionInfo>
</NavigationThemeTransition>
</TransitionCollection>
</Frame.ContentTransitions>
</Frame>
</SplitView.Content>
查看模型
private string frameSource;
public string FrameSource
{
get { return frameSource; }
set
{
frameSource = value;
RaisePropertyChanged("FrameSource");
}
}
private RelayCommand<string> navCommand;
public RelayCommand<string> NavCommand
{
get
{
navCommand = new RelayCommand<string>(ExecuteNav);
return navCommand;
}
}
public void ExecuteNav(string page)
{
FrameSource = page;
}
我正在为我的框架使用 MVVM Light。最好的方法是什么?
【问题讨论】:
-
您还可以查看封装了所有这些行为的Template10。
标签: c# mvvm mvvm-light windows-10