繁体   English   中英

简单的Int.Parse加法

[英]Simple Int.Parse addition

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

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

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM