我在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();
}
}
}
答案 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();