有没有办法阻止用户将数据粘贴到密码框中。要求是用户不应将密码从密码字段复制到确认密码字段。按键事件似乎没有帮助我,因为它只有在按下ctrl键时才触发,并且不会在ctrl + V上触发。
答案 0 :(得分:1)
一种解决方案可能是扩展TextBox控件以模仿PasswordBox并覆盖KeyUp / KeyDown事件以防止复制/粘贴。似乎有人已经写了这个以支持东亚人物:
Allowing input of east asian characters to PasswordBox
您应该能够修改OnKeyDown处理程序以禁用粘贴:
protected override void OnKeyDown(KeyEventArgs e)
{
if (e.Key == Key.Ctrl)
CtrlKeyDown = true;
if (CtrlKeyDown && (e.Key == Key.C || e.Key == Key.X || e.Key == Key.Z || e.Key == Key.Y || e.Key == Key.V))
e.Handled = true;
else
base.OnKeyDown(e);
}