如何限制用户输入TextBox的值?

时间:2012-04-13 14:02:19

标签: c# wpf xaml

我的应用程序的用户可以在TextBoxes中输入值。在某些情况下,需要将值限制在一定范围内,例如0到1或1到50.在其他情况下,它们最多只能输入13或20个字符。

我可以使用Binding.StringFormat来强制执行这些范围吗?如果是的话,

  • 我需要指定什么才能将值限制为某个字符长度?
  • 我需要指定什么才能将值限制在一定范围内?

如果没有,实现这个的最佳方式是什么?

4 个答案:

答案 0 :(得分:2)

您需要使用输入掩码,请查看此文章WPF Maskable TextBox for Numeric Values

根据事件TextBox_PreviewTextInputTextBoxPastingEventHandler中的这篇文章,您可以检查范围。

答案 1 :(得分:2)

您想要的是输入验证。 对于初学者this tutorial on MSDN会帮助您,有关IDataErrorInfo(首选方式)can be obtained here的更多信息。

这个问题已成为SO的主题:WPF Data Binding and Validation Rules Best Practices

答案 2 :(得分:1)

Vaildation in WPF代码项目应该给你一个良好的开端。

相关问题WPF Validators like ASP.NET也应该有所帮助。

答案 3 :(得分:0)

文本框长度属性应解决

Textbox.maxlength= 10;