创建一个自定义的 TextBox,只接受数字输入。
创建一个自定义的 TextBox,只接受数字输入。
这个问题已经有了答案:
可能有类似问题:
我目前正在开发一个WPF应用程序,我想要一个只能输入数字(包括点和负号)的TextBox。
我知道如何在Windows Forms中实现这一点,但是WPF事件对我来说非常不同。
admin 更改状态以发布 2023年5月24日
只需为keydown事件添加一个处理程序,并为不想允许的键设置e.handled=true。示例在页面上,处理alt-p和alt-n但原理相同。您将需要修改此代码,因为它不是设计用于取消关键冲程,但它确实展示了如何处理keydown事件。
private void Window_KeyDown(object sender, KeyEventArgs e) { // Debug.WriteLine("Main Window Window_KeyDown " + e.Key.ToString()); e.Handled = false; if (e.KeyboardDevice.Modifiers == ModifierKeys.Alt) // && e.KeyboardDevice.IsKeyDown(Key.RightAlt)) { if (e.Key == Key.System && e.SystemKey == Key.N) { e.Handled = true; App.StaticGabeLib.Search.NextDoc(); } else if (e.Key == Key.System && e.SystemKey == Key.P) { e.Handled = true; App.StaticGabeLib.Search.PriorDoc(); } } base.OnKeyDown(e); }
将KeyDown附加到TextBox的示例