大佬教程收集整理的这篇文章主要介绍了TextBox 只允许输入一定范围的数字,但它不接受一些正确的值,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
晚上好,
试图让 WPF 文本框只接受 3 到 2813 之间的双值
在下面的代码中,我不能写任何以 1 或 2 开头的值
喜欢 11,22,113,215,2008
private bool IsValID(@R_696_10495@ng str)
{
double i;
return double.TryParse(str,out i) && i >= 3 && i <= 2813;
}
private voID L_Text_PrevIEwTexTinput(object sender,TextCompositionEventArgs E)
{
e.Handled = !IsValID(((TextBoX)sender).Text + e.Text);
}
PreviewTexTinput 在用户按下某个键时发生。所以此时我们无法知道用户是打算写“2”还是“22”。 要评估该值,我们必须确保用户已完成写入。为此,您可以使用 LostFocus 事件。
private bool IsValid(@R_696_10495@ng str)
{
double i;
return double.TryParse(str,out i) && i >= 3 && i <= 2813;
}
private void TextBox_LostFocus(object sender,RoutedEventArgs E)
{
var txt = sender as TextBox;
if (!IsValid((txt.Text)))
{
//invalid delete text
txt.Text = "";
}
}
详细验证:https://stackoverflow.com/a/37255232/1431001
,你可以做两件事
以上是大佬教程为你收集整理的TextBox 只允许输入一定范围的数字,但它不接受一些正确的值全部内容,希望文章能够帮你解决TextBox 只允许输入一定范围的数字,但它不接受一些正确的值所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。