if (label2.Text == 0)
            { 
            
            }
            else
            {
                label2.Text = label2.Text -1 ;
            }
        }想把以上的判断语句,如何将label2.text的类型转换为整型(int) ,直接用会报错
错误 1 运算符“==”无法应用于“string”和“int”类型的操作数 C:\Documents and Settings\Administrator\桌面\练习\WindowsApplication23\Form1.cs 72 17 WindowsApplication23

解决方案 »

  1.   

    int.parse(label2.text==0) 或者 label2.text=="0"
    else那句也有错
    label2.text-1也要转换
      

  2.   

    if (Convert.ToInt32(label2.Text) == 0) 
      

  3.   

    打错了,应该是
    if(int.parse(label2.text)==0)
      

  4.   

    (int.Parse (label2.Text) == 0)
    这一句这样改没问题
    label2.Text == label2.Text - 1;
    第二句我改半天
    还有错误
    int.Parse(label2.Text) == int.Parse(label2.Text) - 1;
    错误如下
    错误 1 只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句 C:\Documents and Settings\Administrator\桌面\练习\WindowsApplication23\Form1.cs 77 27 WindowsApplication23
    错误 2 运算符“-”无法应用于“string”和“int”类型的操作数 C:\Documents and Settings\Administrator\桌面\练习\WindowsApplication23\Form1.cs 77 53 WindowsApplication23
      

  5.   


    Convert.ToInt32(label2.Text) == Convert.ToInt32(label2.Text) - 1;
    第二句这样写后也报错
    错误 1 只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句 C:\Documents and Settings\Administrator\桌面\练习\WindowsApplication23\Form1.cs 77 17 WindowsApplication23
      

  6.   

    以前用vb.net的时候好像就没要转什么类型!
      

  7.   

                try
                {
                    if (int.Parse(label2.Text) == 0)
                    {                }
                    else
                    {
                       label2.Text = (string)(int.Parse(label2.Text) - 1);
                    }
                }
                catch (Exception ex)
                { }这种转换比较危险,最好加上异常处理
      

  8.   

    label2.Text = int.Parse(label2.Text) - 1; 运行后报错如下错误 1 无法将类型“int”隐式转换为“string” C:\Documents and Settings\Administrator\桌面\练习\WindowsApplication23\Form1.cs 77 31 WindowsApplication23
      

  9.   

    我没加try....catch
    继续报错
    错误 1 无法将类型“int”转换为“string” C:\Documents and Settings\Administrator\桌面\练习\WindowsApplication23\Form1.cs 77 31 WindowsApplication23
      

  10.   

    textBox2.Text =Convert.ToString(Convert.ToInt32(textBox2.Text) - 1);
    用这个.
      

  11.   

    sorry,忘记转换了...
    label.text是string 要输出string 否则报错 
    label2.Text = (string)(int.Parse(label2.Text) - 1);或者
    label2.text=(int.Parse(label2.Text) - 1).tostring;
      

  12.   

    这个暂时没报错阿.
    我现在在做一个倒计时的程序,想通label2显示出来的阿时间的流失的阿
    我担心,这个把string转成int,又转成string的.中途不知道还会不会报错!!
      

  13.   

                if (label2.Text == "0")
                {            }
                else
                {
                    try
                    {
                        int il2 = Convert.ToInt32(label2.Text) - 1;
                        label2.Text = il2.ToString();
                    }
                    catch (FormatException err)
                    {
                        MessageBox.Show("不能转换成数字");
                    }
                    catch (Exception err)
                    {                }
                }