0

我最近完成了使用 Universal Apps 8.1 技术的应用程序。现在,我正在使用 Windows 10 的设备以及版本 10.0.10586.0 的模拟器上测试我的应用程序,但 MessageDialog 存在很大问题。

我有一个简单的应用程序 Universal app 8.1,它重现了问题。这是 XAML:

<StackPanel>
    <TextBox />
    <PasswordBox />
    <Button Click="Button_Click" />
</StackPanel>

并且代码隐藏中有一个事件:

private async void Button_Click(object sender, RoutedEventArgs e)
{
    MessageDialog msgDialog = new MessageDialog("a");
    await msgDialog.ShowAsync();
}

当用户点击输入时,一切都很好。但是当用户点击按钮时,会显示 MessageDialog,之后,事情变得混乱,输入停止正常工作。例如 LostFocus 事件未触发并且输入保持焦点状态。

当您将此代码放入 UWP 项目并部署到 Windows 10 移动设备/模拟器时,一切都很好。

有任何想法吗?

PS ContentDialog 工作正常,但不支持 Windows 8.1。

编辑:

此处:https ://onedrive.live.com/redir?resid=9F03F4A20B9FFCD!24843&authkey=!AHPXxcxSoPJnw3U&ithint=file%2czip是带有示例应用程序和屏幕截图的 zip。

我已经在版本 10.0.10586 的模拟器上的 Visual Studio 2015 Update 1 以及具有相同版本的设备上对此进行了测试。

这是我的测试场景:

1)点击文本框

2) 点击密码框

3)点击屏幕上的任意位置

4)结果(1.png)

  • 未选择文本框

  • 未选择密码框

  • 键盘被隐藏

5) 点击按钮

6) 使用关闭按钮关闭 MessageDialog

7)点击文本框

8) 点击密码框

10)点击屏幕上的任意位置

11) 结果 (2.png)

  • 选择文本框(有时)

  • 密码框被选中

  • 显示键盘

4

1 回答 1

1

推送给 Insider 的最新版操作系统解决了这个问题。构建 10.586.29。

于 2015-12-06T20:13:41.127 回答