C# 将int解析为字符串

C# 将int解析为字符串,c#,C#,我有一个名为txttotalnum的文本框,我正试图将其解析为字符串,它给出了一个错误,提示无法将int转换为system.web.ui.webcontrols.text,请帮助 foreach(mcx.supplierportal.taxregistration _taxlist in edittax) { Txtvatnumber.text = _taxlist.text; Txttotalnum = int.parse(txttotalnum.text) } 应该是: f

我有一个名为txttotalnum的文本框,我正试图将其解析为字符串,它给出了一个错误,提示无法将int转换为system.web.ui.webcontrols.text,请帮助

foreach(mcx.supplierportal.taxregistration _taxlist in edittax)
{
    Txtvatnumber.text = _taxlist.text;
    Txttotalnum = int.parse(txttotalnum.text)
}
应该是:

foreach(mcx.supplierportal.taxregistration _taxlist in edittax)
{
    Txtvatnumber.text = _taxlist.text;
    Txttotalnum.text = int.parse(txttotalnum.text)
}
更改此项:

Txttotalnum = int.parse(txttotalnum.text)
为此:

Txttotalnum.Text = int.Parse(txttotalnum.Text).ToString()

更好的选择是检查一个值:

foreach(mcx.supplierportal.taxregistration _taxlist in edittax)
{
    int outValue;
    Txtvatnumber.text = _taxlist.text;
    if(int.TryParse(txttotalnum.text, out outValue))
    {
        Txttotalnum = outValue.ToString();
    }
    else
    {
        // error
    }
}
int.parse(txtotalnum.text)
txtotalnum.text
中的字符串解析为
int

txtotalnum
是一个
Text
控件

不能将
int
分配给
Text
控件,因此会出现错误


您想做什么?

如果您的文本框是Txttotalnum,则您试图将int值分配给文本框,而不是将其分配给文本框的文本属性

所以更新

Txttotalnum = int.parse(txttotalnum.text)


问题:

1。您直接将
值设置为
TextBox
控件。
2。您正在使用
.Text
属性访问
文本框
文本,但它应该是
.Text
(如果您的问题中没有输入错误)。
3.将值解析为
int
没有任何意义,因为
TextBox
控件只接受
String

试试这个:

Txttotalnum.Text = txttotalnum.Text;
但是,如果您确实想检查赋值
值是否为
int
,可以使用
int.TryParse()
方法进行检查,如果无法将其解析为
int
,只需将值赋值为零或不显示值即可

试试这个:

int result;
if(int.TryParse(txttotalnum.Text,out result))
Txttotalnum.Text = result.ToString();
else
Txttotalnum.Text = "0";//assign zero or display no value

尝试以下操作:
txtotalnum=int.parse(txtotalnum.text).ToString()
您的变量非常容易混淆。不要解析为
字符串
您从
字符串进行解析,它是隐式的,而不是复杂的!!如果要为文本框指定值,请将其指定给文本属性。您不需要将其解析为int,然后再将其字符串化。只需直接分配值,例如:Txttotalnum.Text=value.camelCase和PascalCase向您致意。这是不可能的。您得到的错误是因为您试图将整数转换为文本框控件。我的代码没有,所以您可能没有正确复制它。不需要解析为int。您正在将字符串解析为int,然后再解析为string。这不是一个好的做法。SpiderCode:它可能用于验证或格式化。例如,文本框可能有前导零。这将删除它们。我同意这样做很奇怪。您的代码将给出一个错误“无法将源类型'int'转换为目标类型'string'”。这段代码有什么意义?获取一个textbox值并将其放入textbox中,它是否已经存在?它没有任何用途。OP说:它给出了一个错误,说明无法将int转换为system.web.ui.webcontrols.text,这意味着他/她正在尝试为文本框赋值。它给出了一个错误。请阅读代码。他放在文本框中的文本就是那个文本框中的文本。他做整数解析是有原因的。你的代码行是完全超级的,它没有任何效果。如果编译器不直接删除它,我会感到惊讶。OP的工作就是识别相同的代码。可能他/她提供的示例代码只是为了解释。
int result;
if(int.TryParse(txttotalnum.Text,out result))
Txttotalnum.Text = result.ToString();
else
Txttotalnum.Text = "0";//assign zero or display no value