2013-05-25 61 views
0

我給Textbox1和Textbox2 int輸入,然後兩者的總和將顯示在Label1上。誰能告訴我它是如何工作的?我的int.parse不工作。簡單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(); 
     } 
    } 
} 
+0

如果無法將輸入分析爲整數,則''.Parse'將引發'FormatException'。您可能要麼捕獲該異常,要麼簡單地使用'int.TryParse',而是返回一個'bool'來指示成功或失敗。 – Dirk

回答

1

您必須分配Button1_Click事件處理程序Button事件OnClick

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

你也應該在Button1_Click事件處理程序使用方法TryParsemsdn),而不是Parse方法。

+0

謝謝你糾正我的錯誤。 – CoderBeginner

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(); 
+0

感謝您的有用信息! – CoderBeginner