简单的Int.Parse添加

时间:2013-05-25 15:49:40

标签: c# asp.net textbox int

我在Textbox1和Textbox2中输入int输入,然后两者的总和将显示在Label1上。谁能告诉我它是如何工作的???我的int.parse无效。

.asxp

 <div>
         <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
         <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
         <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
         <asp:Button ID="Button1" runat="server" Text="Display" />

     </div>

.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace MQM_System
{   
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void Button1_Click(object sender, System.EventArgs e)
        {
            int sum = 0;

            sum = int.Parse(TextBox1.Text) + int.Parse(TextBox2.Text);
            Label1.Text = sum.ToString();
        }
    }
}

2 个答案:

答案 0 :(得分:1)

您必须将Button1_Click事件处理程序分配给Button事件OnClick

<asp:Button ID="Button1" runat="server" Text="Display" OnClick="Button1_Click" />

另外,您应该在TryParse事件处理程序中使用Parse方法(msdn)而不是Button1_Click方法。

答案 1 :(得分:0)

Int.Parse的问题是它需要一个有效数字,否则会引发异常 您可以使用TryParse来实现更好的控制

  int num1;
  if(!Int32.TryParse(TextBox1.Text, out num1))
  {
      Label1.Text = "Not a valid number";
      return;
  }
  int num2;

  if(!Int32.TryParse(TextBox2.Text, out num2))
  {
      Label1.Text = "Not a valid number";
      return;
  }
  sum = num1 + num2;
  Label1.Text = sum.ToString();