当前位置:编程学习 > C#/ASP.NET >>

菜鸟求助!textbox问题

小弟刚接触c#,给windows form加入两个textbox控件一个label一个button,想实现两个textbox.text值相加的和传给label,按button显示在label上,我就这么写的:(在双击button后的代码里)label1.text=textbox1.text+textbox2.text;  label1.show();然后就报错了,说什么运算符和string类型不能相互转换,应该怎么写两个textbox值相加啊?是不是textbox默认是string型啊?写的时候要不要转换格式啊?怎么写?貌似好弱智的问题拿不上台面啊。谢谢各位啦 --------------------编程问答-------------------- label1.text=(Convert.toInt32(textbox1.text)+Convert.toInt32(textbox2.text)).toString(); --------------------编程问答-------------------- textbox1.text默认获取的string ,如l楼,先进行转换,再进行加减 --------------------编程问答-------------------- textbox1.text本来就是String类型,没有默认不默认的问题,c#是强类型检查的语言,textbox1.text只能是string而不能是其他类型,如果想转换成整数或者浮点数,需要用Convert等类来转换, --------------------编程问答-------------------- label1也无需调用show方法,只要label1.Text=xxx,赋值之后自动就刷新界面了, --------------------编程问答-------------------- int num1=convert.int32(textbox1.text);
int num2=convert.int32(textbox2.text);

label1.txt=num1-num2; --------------------编程问答-------------------- if   (isNumeric(TextBox1.Text)   ||   isNumeric(TextBox2.Text))
{
label1.Text=(Convert.ToInt32(TextBox1.Text)-Convert.ToInt32(TextBox2.Text)).ToString();
} --------------------编程问答--------------------

if(!string.IsNullOrEmpty(textbox1.Text)&&!string.IsNullOrEmpty(textbox2.Text))
{
       try
       {
             label1.Text=int.Parse(textbox1.Text.Trim())+int.Parse(textbox2.Text.Trim()); 
       }
       catch(Exception ex)
      {
             label1.Text = "不好意思,输入的不是数字!";
      }
}

--------------------编程问答-------------------- 这些问题你还是多看书吧,这问题不懂想你的基础很差,加油吧,多看些基础,在基础上多练习一些,写些系统什么的,你的技术就有长进了 --------------------编程问答--------------------
1、5楼如果输入非数字会报错

6楼只判断了一种也不行,,

7楼还可以。。。


2个文本框都调用以下事件
  /// <summary>
        /// 限制输入数字以外的字符
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtRuYuanCount_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (((int)e.KeyChar < 48 || (int)e.KeyChar > 57) && e.KeyChar != 8)
            {
                e.Handled = true;
            }
        }
    private void btnAdd_Click(object sender, EventArgs e)
        {
int num1=convert.int32(textbox1.text);
int num2=convert.int32(textbox2.text);

label1.Text=num1+num2;
}
--------------------编程问答-------------------- int a=Convert.ToInt32(textBox1.Text);
int b=Convert.ToInt32(textBox2.Text);

label1.Text=Convert.ToInt32(a+b); --------------------编程问答-------------------- 刚开始学,想想写这个代码成功之后应该很开心,有信心了才能继续学,越学越有味道!1楼都搞定了就只能说点这些东东了,呵呵! --------------------编程问答--------------------
引用 10 楼  的回复:
int a=Convert.ToInt32(textBox1.Text);
int b=Convert.ToInt32(textBox2.Text);

label1.Text=Convert.ToInt32(a+b);


为什么要那样?难道你想突出和5楼不一样?你哪代码不报错才怪呢 --------------------编程问答-------------------- 这是winform里面最简单的编程问题了吧。简单的思路就是在button的代码中,把textbox.text的string类型转换成可进行计算的int或double类型,然后进行计算把计算结果再转换成string类型赋值给label.text --------------------编程问答-------------------- @happy09li,你那个限制输入数字以外的keypress事件怎么调成负数也可以输入啊,就是前面带着一个负号也可以。谢谢啦 --------------------编程问答-------------------- 限定只是数字输入,输入负数也是个问题。 --------------------编程问答-------------------- 上面这个头像好好笑哦
--------------------编程问答-------------------- .Text和想要计算的数字的类型应该是不一样的吧,得把输入的值改成整形或者是浮点型的才可以相加。 --------------------编程问答-------------------- LZ是新手、你们说那么多干嘛呢、
label1.text=(Convert.toInt32(textbox1.text)+Convert.toInt32(textbox2.text)).toString();
输入的是不是数字这些以后接触到了再说、
先把他现在的问题解决了先、
textbox1.text是string 
要把它转换成整形才能进行运算、 --------------------编程问答--------------------
引用 5 楼  的回复:
int num1=convert.int32(textbox1.text);
int num2=convert.int32(textbox2.text);

label1.txt=num1-num2;


如此这般! --------------------编程问答-------------------- label1.text=textbox1.text+textbox2.text; label1.show();

你里面的textbox1.text+textbox2.text  textbox1.text都是String类型的不能做加减的运算。所以要先转换成Int类型的才能做运算。 建议用
 label1.text=(int.Parse(textbox1.text)+int.Parse(textbox2.text))+""; --------------------编程问答-------------------- 因为TextBox的Text值是string类型,而相加必须转化成int或者double能进行相加的类型,但是结果ToString()后付给Label.text --------------------编程问答-------------------- 我也是新手,不过我觉得肯定要转换啊,把字符串转换成INT型,这么写
Convert.ToInt32(textBox.Text),然后再相加。 --------------------编程问答--------------------
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,