ShowDialog 和 TextBox 存在触摸错误/问题
作者: vsfeedback创建于 2020年1月31日更新于 2026年9月18日
标签Bug
_此问题已从 [开发者社区中的一个工单](https://developercommunity.visualstudio.com/content/problem/890778/touch-bugissue-with-showdialog-and-textbox.html) 移开。_
---
你好,我正在开发一个 WPF 应用程序,用于与触摸设备一起使用(运行 Win 10 全)。
有一个场景,触摸无法按预期响应。
如果我有一个 TextBox 并打开一个对话框(ShowDialog()),则对话框将不会处理任何触摸,并会忽略用户:
A) 1 个触摸被忽略 - 如果使用单点触摸驱动。
B) 10 个触摸被忽略 - 如果使用多点触摸驱动。
然后它将再次正常响应。
我已经附上了一个视频,展示了此问题,还有一个测试项目,以便您可以轻松复制(使用 Windows 模拟器或触摸显示器)
在视频中,您可以看到,通过按钮打开对话框时,它会按预期响应,但如果通过 TextBox 打开,则会出现触摸问题。
textbox-showdialog-touch-issue.mp4
使用的代码如下:
private void TextBox_PreviewMouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
// 这会在对话框中引发触摸问题。
// (1 个触摸被忽略 - 使用单点触摸显示器/驱动 - 10 个触摸被忽略 - 使用多点触摸显示器/驱动)
new DialogWindow(). ShowDialog();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
new DialogWindow(). ShowDialog();
}
Windows 10
VS 2019
.NET 4.6.1(但也已在 4.8 中测试,问题完全相同)
内容来源: dotnet/wpf