注册 登录
编程论坛 ASP.NET技术论坛

怎么触发动态添加控件的触发事件

douzi 发布于 2007-05-29 14:02, 1639 次点击

我根据数据库的记录在后台CS文件里面添加checkbox,添加后显示在页面的gridview的模板列中,我想判断checkbox是否被选中或者取消选中,怎么判断啊。。。。

for (int j = 0; j < dsAllPower.Tables[0].Rows.Count; j++)
{
CheckBox[] ck = new CheckBox[dsAllPower.Tables[0].Rows.Count];
ck[j] = new CheckBox();
ck[j].ID = "CheckBoxPowerName" + j.ToString();
//ck[j].AutoPostBack = true;
ck[j].Text = dsAllPower.Tables[0].Rows[j]["PowerName"].ToString();
ck[j].CheckedChanged += new UpdateGetPowerHandler(UpdateGetPower);//////委托
///////我想用委托,可是用不起来。。不明白怎么用,请高手指点。。
pHPower.Controls.Add(ck[j]);//添加CheckBox
}

好象添加checkbox完postback以后,checkbox就全没有了。。。

12 回复
#2
bygg2007-05-29 14:07
加个 !IsPostBack
#3
GrimFish2007-05-29 14:39
LZ你想实现什么功能呢?为什么不把checkbox直接拖到gridview里,然后在来获取是否选定呢。
#4
douzi2007-05-29 16:56
因为checkbox的个数是从数据库里面取得的,不知道具体有几个。。所以要动态添加啊。。添加了checkbox以后,要怎么获得是否被check。。。
#5
GrimFish2007-05-29 17:00

你把CHECKBOX的个数存到数据库?。。。。。

#6
douzi2007-05-29 17:40
晕你啊,目前就是要实现这个效果拉。。。能不能实现咯。。
#7
douzi2007-05-29 17:42
有没有高手帮我啊。。。求救。。
#8
douzi2007-05-29 17:42
在线等
#9
douzi2007-05-29 18:18

有没有人啊有没有人啊,都去吃饭拉。。。。。。。。

#10
douzi2007-05-29 19:51
人呢人呢。。在线等Y。。。高手帮我啊。。
#11
GrimFish2007-05-29 22:23
弱弱的问一下,你是不是要实现在gridview中有有一列全部是checkbox,可以做全选之后批量删除,修改等操作呢?

我实在看不动你要表达什么。
#12
douzi2007-06-01 23:06

好,我换一个类型的,就是说我页面加一个Panel
<body>
<form id="form1" runat="server">
<div>
<asp:Panel ID="Panel1" runat="server" Height="50px" Width="125px">
</asp:Panel>
</div>
</form>
</body>
然后在cs文件里面动态添加LinkButton
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
LinkButton[] lb = new LinkButton[4];
for (int i = 0; i < 4; i++)
{
lb[i] = new LinkButton();
lb[i].Text = "这是动态添加的LinkButton"+i.ToString();
lb[i].Click+=new EventHandler(MyClick);//委托
Panel1.Controls.Add(lb[i]);
}
}
private void MyClick(object sender, EventArgs e)
{
Response.Write("在这里实现某种功能");
}
}
我这里是用委托实现动态添加的LinkButton的Click事件,但是我需要在MyClick()方法里面传一个我需要的参数,比如说上面for循环里面的i,怎么实现??跪求方法,真的感觉好难搞。。。

#13
SmallKnight2007-06-04 08:43
我以前做过,不过要找一找,好久没弄过这东东了。
1