【问题标题】:Asp.Net with C# textbox value 0带有 C# 文本框值 0 的 Asp.Net
【发布时间】:2026-02-15 01:05:01
【问题描述】:

我正在使用以下代码尝试在 textbox1.text ="" 时将 Textbox 值设置为 0。

if(textbox1.text=="")
{
     int.Parse(textbox1.Text) == 0.ToString();
}

但是我收到以下错误:

Error: CS0201: Only assignment, call, increment, decrement, and new object expressions can be used as a statement.

如何在 C# 中将文本框的值设置为 0?

【问题讨论】:

    标签: c# asp.net textbox


    【解决方案1】:

    一个简单的赋值运算符应该可以完成这项工作。你真的不需要做任何解析和相等比较运算符:

    if(textbox1.Text == "")
    {
        textbox1.Text = "0";
    }
    

    【讨论】:

    • 这个错误一定是在其他地方。在您未显示的部分代码中。
    【解决方案2】:

    你正在将TextBox 的值解析为整数,但你不想这样做,你想设置它的值,所以只需使用 setter 属性

    yourTextBox.Text="0";
    

    然后您使用条件 == 而不是赋值 = 设置错误 =

    == is used to check if two things are equal ex: 1==1
    

    你应该使用这个=来分配或设置

    【讨论】:

      【解决方案3】:

      您的问题的解决方案

      if (string.IsNullorEmpty(textbox1.Text))
      {
          textbox1.Text = "0";
      }
      

      问题原因

      1. int.Parse 返回一个整数,您正在尝试将字符串与 int 进行比较。
      2. == 运算符用于检查左侧是否等于右侧,您尝试将其用作赋值运算符。

      【讨论】:

      • +1 for NullOrEmpty - 不知道为什么有人不赞成这个,这对我来说似乎是一个很好的答案。
      【解决方案4】:
      if(String.IsNullOrEmpty(textbox1.Text))
      {
           textbox1.Text = "0";
      }
      

      IsNullOrEmpty wud 也会检查空值。

      【讨论】:

        【解决方案5】:

        代码有几个问题。

        int.Parse 如果它能够解析将给出int 值,而您已经设置了与string 的比较。

        接下来您可以使用string.IsNullOrEmpty 来检查TextBox 是否为空。

        最后,您可以将"0" 作为字符串分配给TextBox.Text 属性

        if(String.IsNullOrEmpty(textbox1.Text))
        {
             textbox1.Text = "0";
        }
        

        【讨论】:

          【解决方案6】:

          尝试使用这个:

          if(textbox1.Text == "")
          {
              textbox1.Text = "0";
          }
          

          【讨论】: