WP7应用开发笔记-插曲 小心使用MessageBox

哎,上班了没什么时间学习了,谈点小技巧。

最近审查的时候遇到一个问题,研究很久才解决,原来是一个小问题就是MessageBox

 

原来的代码是这样的,在没有输入IP的时候提示用户并跳转到配置页面。

MessageBox.Show("使用前请先设置接收端IP");
GoToConfig();//跳转到配置页面 

如果在WPF之类的写这样的代码没有什么大问题,但是WP7里面问题就出现了。

在MessageBox的模态窗口打开的时候按一下“开始菜单”Win键会发生意想不到的情况就是

MessageBox的模块窗口会被关闭,并且返回MessageBoxResult.None

然后继续执行GoToConfig();但是现在界面以及切换到开始屏幕,

直接抛出“This operation is not supported on a relative URI.”异常了。

 

解决方法是:

var result = MessageBox.Show("使用前请先设置接收端IP");
if (result == MessageBoxResult.OK)
GoToConfig();//跳转到配置页面
 

这个故事告诉我一下在WP7里面使用MessageBox要注意 Deactivated 事件引发的MessageBox返回的情况。

posted @ 2012-01-31 20:06  kiminozo  阅读(1079)  评论(7编辑  收藏  举报