如何从Deployment.Current.Dispatcher.BeginInvoke获得结果?

时间:2013-03-28 22:07:18

标签: c# silverlight

我正在Windows Phone 8上开发一个应用程序,我想问有没有办法从MessageBox.Show获取结果,而MessageBox包含在Deployment.Current.Dispatcher.BeginInvoke中?例如:

  Deployment.Current.Dispatcher.BeginInvoke(() =>
            {
                MessageBox.Show(message, title, MessageBoxButton.OKCancel);
            });

我想得到用户的选择,我该怎么办?非常感谢!

1 个答案:

答案 0 :(得分:4)

最好的方法是使用一个传递结果的回调

Deployment.Current.Dispatcher.BeginInvoke(() => {
  var result = MessageBox.Show(message, title, MessageBoxButton.OKCancel);
  OnMessageBoxComplete(result);
});

void OnMessageBoxComplete(MessageBoxResult result) { 
  ...
}