我遇到了我不明白的情况,希望有人给我启发,如果可能的话。WPF模态窗口行为怪异
创建一个WPF应用程序。为了简单起见,将此应用程序视为一个窗口。我在这个窗口上放了一些控件,其中还有一个TextBox控件(我们称它为TB)。
有一个要求,这个结核病患者必须始终有重点(以防某人通过条形码扫描仪输入某物或某物时应该出现)。
我想在一个定时器的帮助下实现这一点:每秒都将焦点转移到结核病。
直到现在一切正常(如预期)。
奇怪的是以下内容:假设一个新用户想要使用这个窗口,所以她必须登录。我想用一个新的Window对象(我们称之为W2)来实现它,这样调用它:
W2.ShowDialog();
这个W2窗口应该是模态的(记住定时器仍然执行)。
疯狂的事情是,在Windows Vista中这个工程完美预期(这意味着W2是有模式的,用户可以到她是否应该W2做什么),在Windows XP 但尽快用户想要在W2的文本框中输入内容,焦点在初始窗口上重新设置为TB(据我所能解释:这意味着W2是而不是模式!!!?我是对吗?)。
我该如何克服这种情况?
这是正确的做法吗?
在此先感谢
说实话:我没有设置这个。我想你是正确的!这一定是缺失的部分。但另一方面:为什么它在Windows Vista上工作? – 2010-06-27 19:25:48
@Sawas:出于某种原因,这在XP中似乎没有完全相同 - 在Vista/7中,没有设置这通常不会导致问题(尽管在技术上它应该在那里设置) – 2010-06-28 16:17:59