C#如果检查文本框输入是否大于0,还检查它是否';s是一个整数(数字)

C#如果检查文本框输入是否大于0,还检查它是否';s是一个整数(数字),c#,if-statement,textbox,C#,If Statement,Textbox,我制作了一个记分板,用户在其中输入文本框1中允许的最大点数。我有两个按钮。左侧增加标签左侧的值,右侧增加标签右侧的值。一旦一方达到最大点数,我就用消息框宣布获胜 我想知道如何检查用户是否没有在文本框中输入整数。我已经为它设置了大于0的te条件 这就是我所拥有的: public void winner() { int max=Convert.ToInt32(textBox1.Text); 如果(max,您需要解析文本以确保它是一个数字 public void winner() {

我制作了一个记分板,用户在其中输入文本框1中允许的最大点数。我有两个按钮。左侧增加标签左侧的值,右侧增加标签右侧的值。一旦一方达到最大点数,我就用消息框宣布获胜

我想知道如何检查用户是否没有在文本框中输入整数。我已经为它设置了大于0的te条件

这就是我所拥有的:

public void winner()
{
int max=Convert.ToInt32(textBox1.Text);

如果(max,您需要解析文本以确保它是一个数字

 public void winner()
 {

      if (!int.TryParse(textBox1.Text, out int max))
      {
         MessageBox.Show("Dem numbers aren't numbers");
         return;
      }

      ...

将数字的字符串表示形式转换为其32位有符号 等效整数。返回值指示转换是否 成功了


您需要解析文本以确保它是一个数字

 public void winner()
 {

      if (!int.TryParse(textBox1.Text, out int max))
      {
         MessageBox.Show("Dem numbers aren't numbers");
         return;
      }

      ...

将数字的字符串表示形式转换为其32位有符号 等效整数。返回值指示转换是否 成功了


使用TryParse输入测试编号

private bool function GreaterNumber(string text)
{
    bool result = Int32.TryParse(myTextBox.Text, out number);
    return result && number > 0;
}

使用色氨酸输入测试编号

private bool function GreaterNumber(string text)
{
    bool result = Int32.TryParse(myTextBox.Text, out number);
    return result && number > 0;
}

可以在之后添加以下代码行:

int max;
bool result = Int32.TryParse(textBox1.Text, out max);
if (result && max > 0) ...
谢谢@john的建议


干杯!

您可以在后面添加以下代码行:

int max;
bool result = Int32.TryParse(textBox1.Text, out max);
if (result && max > 0) ...
谢谢@john的建议


干杯!

您可以先使用int.TryParse(n,out value)检查整数,然后检查是否大于零

int value;
bool success=int.TryParse(n, out value);

if(success)
{
if(n>0)
//do something
}

您可以首先使用int.TryParse(n,out值)检查整数,然后检查是否大于零

int value;
bool success=int.TryParse(n, out value);

if(success)
{
if(n>0)
//do something
}
试一试

如果您已经在其他地方声明了a、b变量,请更改名称。

尝试


如果您已经在其他地方声明了a、b变量,请更改名称。

If(int.TryParse(myTextBox.Text,out var)?\u>0:false){/*数值和正数*/}
您不能使用数字上下控件吗?我认为这样更合适(因为它将输入限制为数字)文档是你的朋友Epickip我该怎么做?对不起,我刚开始学习C#veryrecently@ReneVazquez在工具箱中(您可以放置的所有控件都在其中),您是否看到类似于
NumericUpDown
(不确定名称)。然后,当您需要值时,只需执行
.value
if(int.TryParse(myTextBox.Text,out var>0:false){/*数字和正数*/}
你不能使用数字上下控制吗?那会更合适我想(因为它限制输入数字)文档是你的朋友Epickip我怎么做?对不起,我刚开始学习C#非常好recently@ReneVazquez工具箱里(您可以放置的所有控件都在那里)您是否看到类似于
NumericUpDown
(不确定名称)的内容。然后,当您需要值时,只需执行
.value
您可能希望将if更改为
if(result&&max>0)
以便与问题匹配:)您可能希望将if更改为
if(result&&max>0)
以便与问题匹配:)您应该将其放在行
int max=Convert.ToInt32(textBox1.txt)
之前,因此如果输入不是整数,则无需转换。您应该将其放在行
int max=Convert.ToInt32(textBox1.txt)
之前,以便如果输入不是整数,则无需转换。