C# 从服务器端获取TextBox控件的设置值
假设我在ASP.NET Webform的页面加载中有此代码C# 从服务器端获取TextBox控件的设置值,c#,asp.net,webforms,code-behind,C#,Asp.net,Webforms,Code Behind,假设我在ASP.NET Webform的页面加载中有此代码 protected void Page_Load(object sender, EventArgs e) { TextBox1.Text = "123"; } 这是我在aspx文件中的控件 <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="Bu
protected void Page_Load(object sender, EventArgs e)
{
TextBox1.Text = "123";
}
这是我在aspx文件中的控件
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
现在在TextBox1.Text中,我应该得到12548或更新的值,而不是我在页面加载中已经设置的123
现在我想获取更新后的值,我如何才能正确地进行操作。修改页面加载,如下所示:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostback)
{
TextBox1.Text = "123";
}
}
按如下方式修改页面加载:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostback)
{
TextBox1.Text = "123";
}
}
将其包装在非回发邮件中
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
TextBox1.Text = "123";
}
}
或将其完全移除:
protected void Page_Load(object sender, EventArgs e)
{
//not here
}
<asp:TextBox ID="TextBox1" Text="123" runat="server"></asp:TextBox>
受保护的无效页面加载(对象发送方,事件参数e)
{
//不在这里
}
将其包装在一个非回发文件中
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
TextBox1.Text = "123";
}
}
或将其完全移除:
protected void Page_Load(object sender, EventArgs e)
{
//not here
}
<asp:TextBox ID="TextBox1" Text="123" runat="server"></asp:TextBox>
受保护的无效页面加载(对象发送方,事件参数e)
{
//不在这里
}
问题在于“在ASP.Net中,每次您导致任何类型的回发,包括处理按钮单击等事件时,您都在处理必须从头开始重建的页面类的全新实例。以前在服务器上构建页面所做的任何工作都将消失。这意味着运行整个页面生命周期,包括页面加载代码,而不仅仅是单击代码
每次在前端执行任何事件时,它都会重新创建页面并再次调用pageload方法,页面将实际重置。为了避免这种情况,应该使用以下代码
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostback)
{
//default code
}
}
问题是这个“在ASP.Net中,每次您导致任何类型的回发,包括处理按钮单击等事件时,您都在处理必须从头开始重建的页面类的全新实例。以前在服务器上构建页面所做的任何工作都将消失。这意味着运行整个页面生命周期,包括页面加载代码,而不仅仅是单击代码
每次在前端执行任何事件时,它都会重新创建页面并再次调用pageload方法,页面将实际重置。为了避免这种情况,应该使用以下代码
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostback)
{
//default code
}
}