Asp.net动态添加控件
Asp.net通过数据库的信息动态添加ListBox以及ListBox中的内容。现在我是通过动态new然后Add到那个面板中,这样的话可以实现动态添加,但是说如果我通过下...
Asp.net通过数据库的信息动态添加ListBox以及ListBox中的内容。
现在我是通过动态new 然后Add到那个面板中,这样的话可以实现动态添加,但是说如果我通过下面一个按钮触发事件 然后在事件中写代码获取你选择的内容,但是获取不到,每次都是获取的第一个,不是isPostBack问题,如果那么简单我也不会问了,大家帮我想想 展开
现在我是通过动态new 然后Add到那个面板中,这样的话可以实现动态添加,但是说如果我通过下面一个按钮触发事件 然后在事件中写代码获取你选择的内容,但是获取不到,每次都是获取的第一个,不是isPostBack问题,如果那么简单我也不会问了,大家帮我想想 展开
3个回答
2013-09-13
展开全部
是这样的.不光是B/s里.连C/s里都是这样.通过按钮事件是获取不到数据的.你只能这样.通过操作两个,DataTable把行赋值给ListBox.然后把DataTable删除一行.另一个DataTable添加一行,于此同时操作两个ListBox,说白点就是,手动实现两边数据交互,ListBox只是用于简单的显示作用,真正的操作是通只手动操作两个DataTable来实现数据交互的,不晓得,您看懂了米 .- -.你还好呗哩.最近..怎么实然搞起这个来哩.?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-13
展开全部
protected void Page_Load(object sender, EventArgs e)
{
// if (!IsPostBack)
// {
ListBox lis = new ListBox();
lis.ID = "listSele";
lis.Items.Add(new ListItem("选择1","1"));
lis.Items.Add(new ListItem("选择2", "2"));
lis.Items.Add(new ListItem("选择3", "3"));
lis.SelectedIndexChanged += new EventHandler(ListBoxChangage);
lis.AutoPostBack = true;
Div.Controls.Add(lis);
// }
}
protected void ListBoxChangage(object sender, EventArgs e)
{
string str;
ListBox lis = sender as ListBox;
str = lis.SelectedItem.Text;
Page.ClientScript.RegisterStartupScript(this.GetType(), "2", "<script>alert('"+str+"');</script>");
}这样做问题存在于如果放在!IsPostBack里面 当数据回传的时候这个控件就会消失 从而触发不了事件
{
// if (!IsPostBack)
// {
ListBox lis = new ListBox();
lis.ID = "listSele";
lis.Items.Add(new ListItem("选择1","1"));
lis.Items.Add(new ListItem("选择2", "2"));
lis.Items.Add(new ListItem("选择3", "3"));
lis.SelectedIndexChanged += new EventHandler(ListBoxChangage);
lis.AutoPostBack = true;
Div.Controls.Add(lis);
// }
}
protected void ListBoxChangage(object sender, EventArgs e)
{
string str;
ListBox lis = sender as ListBox;
str = lis.SelectedItem.Text;
Page.ClientScript.RegisterStartupScript(this.GetType(), "2", "<script>alert('"+str+"');</script>");
}这样做问题存在于如果放在!IsPostBack里面 当数据回传的时候这个控件就会消失 从而触发不了事件
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-13
展开全部
ListBox lb=new ListBox();
lb.items.add(new listItem('',''));
div.control.add(lb);
自己看看吧,是这样搞的....
lb.items.add(new listItem('',''));
div.control.add(lb);
自己看看吧,是这样搞的....
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询