我有一个水印keydown的问题。我有一个像这样的keydown事件处理程序。KeyDown上的Watermark难题
if (e.Key == Key.Tab)
{
FocusManager.GetFocusedElement();
if (FocusManager.GetFocusedElement() == txtPassword)
btnLogin.Focus();
else if (FocusManager.GetFocusedElement() == txtUserName)
txtPassword.Focus();
else
txtUserName.Focus();
}
它工作正常,但是当焦点在btnLogin,当你按Tab键,焦点就直接到密码框。我插入了断点无济于事。它只传递一次代码,并且它进入else语句。有任何想法吗?感谢所有回复。
是否有任何特定的原因,您没有使用内置选项卡功能? –
@competent_tech是的。这是因为我们在MAC上运行此应用时遇到了一些技术问题。 Mac上的问题是,当我从txtUserName中选择标签时,标签会转到浏览器的地址栏。这就是为什么我试图对这个进行硬编码。 – Nathan
哎。我假设你检查了控件上的tabindexes,以确保它们按照正确的顺序排列,以防Mac实现只是选择这些控件? –