关于动态添加多个listBox控件,并且获得每个listBox 的selectindexchange事件

meixiaofeng 2004-08-02 11:59:19
动态添加多个listBox控件(根据数据库定控件个数),并且获得每个listBox 的selectindexchange事件,并且在页面需要保存selectindexchange事件后的状态:
我是做一个目录管理,比如说第一个listbox的项为根目录,选择一个项后要在下一个listbox显示当前项的子目录,依次向下循环,可以无限
...全文
183 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
gabriel1 2004-08-05
  • 打赏
  • 举报
回复
ListItem item;
for(int i=0;i<ds.Tables["template"].Rows.Count;i++)
{
item=new ListItem(ds.Tables["template"].Rows[i]["var_TemplateName"].ToString(),ds.Tables["template"].Rows[i]["int_TemplateID"].ToString());
Lis_Template.Items.Add(item);
}
saucer 2004-08-02
  • 打赏
  • 举报
回复
also do

ListBox lb = new ListBox();
lb.AutoPostBack = true;
lb.ID = "lb" + i.ToString();
....
saucer 2004-08-02
  • 打赏
  • 举报
回复
void YourHandler (object sender, EventArgs e)
{
ListBox lb = (ListBox)sender;
Response.Write(lb.ID);
}
smx717616 2004-08-02
  • 打赏
  • 举报
回复
mark yi xia
hertcloud 2004-08-02
  • 打赏
  • 举报
回复
我想 这个应该和动态树 相似
学习 下老大们的方法
心雨楼 2004-08-02
  • 打赏
  • 举报
回复
就跟树一样
saucer 2004-08-02
  • 打赏
  • 举报
回复
the important thing is to recreate those controls upon postback, so it is important to do it in Page_Load or before, for example,


void Page_Load(Object sender, EventArgs e)
{
//get data from the database

int nCount = ..; //might need to save nCount inside a ViewState or Session variable

for (int i=0; i < nCount; i++)
{
ListBox lb = new ListBox();
lb.ID = "lb" + i.ToString();
lb.SelectedIndexChanged += new EventHandler(YourHandler);
form1.Controls.Add(lb);
if (!IsPostBack) //or the first time you create them
{
lb.DataSource = ...;
...
lb.DataBind();
}
}

}

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧