你好我有一个inputtextfield我想把数字放在例如100的脚本循环100次,但我总是得到一个错误。当一个数字放在它正常运行的地方时,我正试图用文本框中的数字来提供它。
for (var i = 0; i < (textBox2.Text); i++)
{
code in here
}
这是错误:错误1运算符'&lt;'不能应用于'int'和'string'
类型的操作数我做错了什么?有人能帮助我吗?
答案 0 :(得分:1)
您提供textBox2.Text
虽然它有数字,但它的类型为string
,您需要integer
。
int result = int.Parse(textBox2.Text);
for (var i = 0; i <result ; i++)
{
//Your code
}
答案 1 :(得分:1)
Check
如果文本可以解析为int first and then proceed
。如果int.TryParse()
为true
textBox2.Text.Trim()
方法将返回int
int limit;
if( int.TryParse(textBox2.Text.Trim(), out limit))
{
for (var i = 0; i < limit ; i++)
{
//code in here
}
}
答案 2 :(得分:0)
您需要使用Int32.Parse()
方法将文本框中的文本转换为整数。 Text字段只是一个字符串,编译器无法弄清楚你要做什么。
答案 3 :(得分:0)
textBox2.Text
中的值是string类型,您需要将其强制转换为int。
这是通过cint()函数
完成的cint(textBox2.Text)
或Parse()方法
Int32.Parse(textBox2.Text);
如果您确定输入字符串是有效的,包含类似“123”而不是“absjsdfd”的内容,则上述两种方法都可以使用。
for (var i = 0; i < Int32.Parse(textBox2.Text); i++)
{
//your code in here
}
为避免在文本框中输入无效输入时抛出异常,请使用更强大的函数Integer.TryParse()
int limit;
bool valid = int.TryParse(textbox2.Text, out limit);
if(valid)
for (var i = 0; i < limit; i++)
{
//your code in here
}
答案 4 :(得分:0)
错误信息非常清楚,您正在尝试将整数与字符串值进行比较。这显然是行不通的。首先需要将值从文本框转换为整数类型,而不是为for循环应用条件。
答案 5 :(得分:0)
使用Int.Parse(txtFirst.Text);
有一件事,你似乎是一个初学者,我希望你按照文本框名称txt
之类的编码遵循命名约定,lbl
作为标签,你可以在你的研究中找到更多材料...
答案 6 :(得分:0)
您需要解析textBox2.Text
String
以获得int
。例如:
int x = int.Parse(textBox2.Text);
for (var i = 0; i < x; i++)
答案 7 :(得分:0)
正如其他人所提到的,textbox2.text是一个字符串,必须转换为#n整数
for (var i = 0; i < int.Parse(textBox2.Text); i++)
{
//code in here
}
但是,我建议您使用更合适的控件,例如数字Up Down:
for (var i = 0; i < Convert.ToInt32(numericUpDown1.Value); i++)
{
code in here
}