这基本上就是我想要做的。我想允许某人输入他们想要运行特定程序多少次的数字。我不知道如何将数字 10 更改为 (textBox1.Text)。如果你有更好的方法请告诉我。我对编程很陌生。
int counter = 1;
while ( counter <= 10 )
{
Process.Start("notepad.exe");
counter = counter + 1;
}
这基本上就是我想要做的。我想允许某人输入他们想要运行特定程序多少次的数字。我不知道如何将数字 10 更改为 (textBox1.Text)。如果你有更好的方法请告诉我。我对编程很陌生。
int counter = 1;
while ( counter <= 10 )
{
Process.Start("notepad.exe");
counter = counter + 1;
}
这显示了如何获取用户提供的输入并将其安全地转换为整数 (System.Int32) 并在您的计数器中使用它。
int counter = 1;
int UserSuppliedNumber = 0;
// use Int32.TryParse, assuming the user may enter a non-integer value in the textbox.
// Never trust user input.
if(System.Int32.TryParse(TextBox1.Text, out UserSuppliedNumber)
{
while ( counter <= UserSuppliedNumber)
{
Process.Start("notepad.exe");
counter = counter + 1; // Could also be written as counter++ or counter += 1 to shorten the code
}
}
else
{
MessageBox.Show("Invalid number entered. Please enter a valid integer (whole number).");
}
尝试System.Int32.TryParse(textBox1.Text, out counterMax)
(MSDN 上的文档)将字符串转换为数字。
如果转换成功,则返回 true;如果失败,则返回 false(即,用户输入的不是整数)
textBox1.Text 将返回一个字符串。您需要将其转换为 int 并且由于它正在接受用户输入,因此您需要安全地这样做:
int max;
Int32.TryParse(value, out max);
if (max)
{
while ( counter <= max ) {}
}
else
{
//Error
}
我建议使用 MaskedTextBox 控件从用户那里获取输入,这将帮助我们确保只提供数字。它不会限制我们的TryParse
功能。
像这样设置掩码:(可以使用“属性窗口”)
MaskedTextBox1.Mask = "00000"; // will support upto 5 digit numbers
然后像这样使用:
int finalRange = int.Parse(MaskedTextBox1.Text);
int counter = 1;
while ( counter <= finalRange )
{
Process.Start("notepad.exe");
counter = counter + 1;
}
使用 Try Catch body ,比如这个函数
bool ErrorTextBox(Control C)
{
try
{
Convert.ToInt32(C.Text);
return true;
}
catch { return false; }
}
并使用