两种方式:
1.利用MvvmLight.Messaging.Messenger消息机制
步骤如下:
定义消息类型
public
class
GoToPageMessage
{
public
string
PageName {
get
;
set
; }
}
在view model中实例化消息类并广播该消息
var msg =
new
GoToPageMessage() { PageName =
"Page2"
};
Messenger.Default.Send<GoToPageMessage>( msg );
在code-behind中(即.xaml.cs文件)注册Messenger对该消息的处理程序
Messenger.Default.Register<GoToPageMessage>
(
this
,
( action ) => ReceiveMessage( action )
);
private
object
ReceiveMessage( GoToPageMessage action )
{
StringBuilder sb =
new
StringBuilder(
"/Views/"
);
sb.Append( action.PageName );
sb.Append(
".xaml"
);
NavigationService.Navigate(
new
System.Uri( sb.ToString(),
System.UriKind.Relative ) );
return
null
;
}
2.自定义INavigation,利用Microsoft.Phone.Controls.PhoneApplicationFrame实现跳转
具体介绍请翻阅 http://blog.csdn.net/afei198409/article/details/8884508