gpt4 book ai didi

c# - 字符.IsNumber()

转载 作者:行者123 更新时间:2023-11-30 18:55:05 24 4
gpt4 key购买 nike

我正在构建 Windows 窗体应用程序。我使用 char.IsNumber() 来检查按下的键是否是数字:

   private void AmBox_KeyPress(object sender, KeyPressEventArgs e)
{
if(char.IsNumber(e.KeyChar))
e.Handled=true;
}

MSDN 说 char.IsNumber() 检查键 char 是否为数字,因此如果它是数字则返回 true。据我所见,结果是相反的——它忽略数字(1、2、3....)而不是字符(A、a、b、c...)。

如果我使用 !char.IsNumber(); 可以解决问题,但我无法理解此方法 char.IsNumber() 的作用。谁能详细解释一下?

最佳答案

char.IsNumber() 如果字符是数字('0', '1', ... '9')。

e.Handled = true“这个事件已经被处理了,所以忽略它”

所以你的代码实际上意味着:

if (e.KeyChar is a number)
Ignore this event

这样看,您可能会明白为什么您的代码只忽略数字。

所以使用 !char.IsNumber() 的解决方案是正确的,因为它基本上说“如果字符不是一个数字,忽略这个事件“

另外,请注意您可能正在寻找 Char.IsDigit , 作为 Char.IsNumber还将其他字符识别为数字。 Char.IsDigit 仅对 '0''9' 返回 true,这很可能是您想要的.

关于c# - 字符.IsNumber(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11648182/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com