protected System.Web.UI.WebControls.Panel Panel1;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.HtmlControls.HtmlForm form ;
private void Page_Load(object sender, System.EventArgs e)
{
TextBox tb = new TextBox();
if(!Page.IsPostBack)
{
tb.Text = "1";
}
else
{
tb.Text = "2";
}
Panel1.Controls.Add(tb);
}
第一次进入,tb.text为1,当我按提交按钮后,按我的设想,tb.text的值应该为2,但它却为1!而且我把enableviewstate都去了了也这样,这是怎么会事啊,如何能让我给它赋值?
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.HtmlControls.HtmlForm form ;
private void Page_Load(object sender, System.EventArgs e)
{
TextBox tb = new TextBox();
if(!Page.IsPostBack)
{
tb.Text = "1";
}
else
{
tb.Text = "2";
}
Panel1.Controls.Add(tb);
}
第一次进入,tb.text为1,当我按提交按钮后,按我的设想,tb.text的值应该为2,但它却为1!而且我把enableviewstate都去了了也这样,这是怎么会事啊,如何能让我给它赋值?
private void Page_Init(object sender,System.EventArgs e)
{
TextBox tb = new TextBox();
Panel1.Controls.Add(tb); }
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
this.Init += new System.EventHandler(this.Page_Init); }里面声明你的TextBox
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace csdnTest
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button Button2;
private void Page_Init(object sender,System.EventArgs e)
{
TextBox tb = new TextBox();
tb.ID = "tb";
this.Page.Controls[1].Controls.Add(tb);
}
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
TextBox tb = (TextBox)this.Page.Controls[1].FindControl("tb");
tb.Text = "1";
}
else
{
TextBox tb = (TextBox)this.Page.Controls[1].FindControl("tb");
tb.Text = "2";
} } #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button2.Click += new System.EventHandler(this.Button2_Click);
this.Init += new System.EventHandler(this.Page_Init);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void Button2_Click(object sender, System.EventArgs e)
{
} }
}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm1</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<asp:Button id="Button2" style="Z-INDEX: 107; LEFT: 216px; POSITION: absolute; TOP: 488px" runat="server"
Text="Button2"></asp:Button>
</FONT>
</form>
</body>
</HTML>
建立一个新的WebForm
试试
http://aspalliance.com/articleViewer.aspx?aId=134&pId=很有帮助
<%@ Page Language="C#" %>
<script runat="server"> // Insert page code here
//
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
TextBox tb = new TextBox();
tb.Text = "1";
Panel1.Controls.Add(tb); }
else
{
Response.Write("exe"); TextBox tb1 = new TextBox();
tb1.Text = "2";
Panel2.Controls.Add(tb1);
} } void Button1_Click(object sender, EventArgs e) {
//Panel1.Controls.Add(tb); }</script>
<html>
<head>
</head>
<body>
<form runat="server">
<asp:Panel id="Panel1" runat="server">Panel</asp:Panel>
<asp:Button id="Button1" onclick="Button1_Click" runat="server" Text="Button"></asp:Button>
<asp:Panel id="Panel2" runat="server">Panel</asp:Panel>
<!-- Insert content here -->
</form>
</body>
</html>不知道你要实现什么样的功能?