有没有人听说过 MessageDialog 没有在 Windows 8 平板电脑上显示的任何问题?或者更具体地说是三星700t?它使用常规的英特尔进程而不是 ARM。我在笔记本电脑上构建了应用程序,从笔记本电脑调试时会显示消息对话框,显示在平板电脑模拟器上,但未显示在实际平板电脑上。
我正在使用 Caliburn.Micro IResult 界面在视图中显示消息对话框。
这是我正在使用的代码片段:
public IEnumerable<IResult> NavExecute(String method)
{
Windows.UI.ViewManagement.ApplicationView.TryUnsnap();
var conn = NetworkInformation.GetInternetConnectionProfile();
if (conn.GetNetworkConnectivityLevel() != NetworkConnectivityLevel.InternetAccess)
{
yield return new MessageDialogResult("Internet Connection Not Detected", "Connection Error");
netOn = false;
}
以上是我的视图模型基类,继承了 IResult 类本身的实现:
public class MessageDialogResult : ResultBase
{
private readonly string _content;
private readonly string _title;
public MessageDialogResult(string content, string title)
{
_content = content;
_title = title;
}
public async override void Execute(ActionExecutionContext context)
{
var dialog = new MessageDialog(_content, _title);
await dialog.ShowAsync();
OnCompleted();
}
}
我怀疑这不是代码的问题,因为我在两个设备上都在 x86 模式下进行调试(在有人问我为什么不对所有设备进行调试之前,这是因为我使用的是 SQLite,它需要为每个架构使用单独的包。 )
我不确定 Windows 8 中的某个设置是否会在应用弹出窗口中禁用,但我找不到。
有任何想法吗?