因为按下button后首先进行的是初始化
panel里的控件被清空了
所以每次只有最后一次click加的那个button了
panel里的控件被清空了
所以每次只有最后一次click加的那个button了
解决方案 »
- .net下的代码可不可以直接在.net ajax工程中使用?
- 打开网页很慢,显示不全,提示正在下载图片。。。。
- 如何在C#中实现pkcs7的加密
- 如何把HTML转换成XHTML?
- 求《asp.net服务器控件高级编程》一书的下载地址!!!!!
- ★★★怎样使放在div中的datagrid在刷新时不跳到顶部★★★
- 打包时遇到的问题
- 为什么我的treeview显示的时候,那个加号的按钮很大很大,我曾经修改过那个图片,可是后来又改回来了阿!但是现在怎么还是显示原来的图片
- 谁能提供报表打印方面的资料??
- C# oledb 汇出excel 超链接无法点击
- 请问在sqlserver2000可不可以通过代理服务器连接远程数据库服务器?
- 用DataList请问这样该怎么写?
private void Page_Load(object sender, System.EventArgs e)
{
if (null == Session["btncnt"])
{
Session["btncnt"] = 0;
}
else
{
int cnt;
cnt = (int)Session["btncnt"];
Button button1;
for (int i=1;i<=cnt;i++)
{
button1=new Button();
button1.Text="Button";
Panel1.Controls.Add(button1);
}
}
} private void button_Click(object sender, System.EventArgs e)
{
Button button1=new Button();
button1.Text="Button";
Panel1.Controls.Add(button1);
Session["btncnt"] = (int)Session["btncnt"] + 1;
}当然,您还可以用您自己更复杂的方法来跟踪已建立的button。 - 微软全球技术中心 VB技术支持本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
你也可以这样实现:
在Global.asax.cs中加入
protected void Session_Start(Object sender, EventArgs e)
{
Session.Add("ButtonNum",0);
}
protected void Session_End(Object sender, EventArgs e)
{
Session.Remove("ButtonNum");
}在Page_Load中加入
private void Page_Load(object sender, System.EventArgs e)
{
if(Page.IsPostBack)
{
int n=(int)Session["ButtonNum"];
n++;
Session["ButtonNum"]=n;
}
}而后
private void Button1_Click(object sender, System.EventArgs e)
{
int n=(int)Session["ButtonNum"];
for(int i=0;i<n;i++)
{
Button bt=new Button();
bt.Text="Button";
Panel1.Controls.Add(bt);
}
}
它就没有提供一种可以保存的方法吗?如果每次添加进去的控件很多,那不是很浪费资源吗?有没有更好的方法??
<script runat=server>
Sub page_load(obj As object,e As eventargs)
If Not ispostback then
viewstate("buttonnum")=0
End If
End Sub Sub button_click(obj As object,e As eventargs)
Dim num,i
viewstate("buttonnum") = viewstate("buttonnum") + 1
num=viewstate("buttonnum")
For i=1 to num
Dim bt As new Button()
bt.Text="Button"
holder.Controls.Add(bt)
Next
End Sub
</script>
<html>
<body>
<Form runat=server>
<asp:Panel id="panel1" runat=server>
<asp:placeholder id="holder" runat=server/>
</asp:panel>
<hr>
<asp:Button id="button1" text="click" onclick="button_click" runat=server/>
</form>
</body>
</html>