天天看点

Asp.net(C#)动态生成表格中的按钮和事件响应

最近几天一直在用C#写Asp.net的东西,发觉Asp.net很好用,也不好用,可能自己的认识比较浅,所以还要多多学习。下面是我遇上的一个问题,要动态的生成表格的行,同时在表格中插入按钮相应事件。插入表格行比较简单

第一步,现在页面上创建一个表格控件,如下代码:

<asp:Table ID="tblCity" runat="server" Width="300px">

</asp:Table>

第二步,就是在cs文件中控制它了

TableRow row = new TableRow(); //创建新行

TableCell cell;//申明单元格

cell = new TableCell(); //创建单元格对象

cell.Text = myCity[i].cityId.ToString();

row.Cells.Add(cell);//插入单元格

第三步,插入新行

tblCity.Rows.Add(row);

结下来,谈到就是如何在Cell中插入一个按钮,并且能响应事件

创建单元格的方式同上,但是其中要使用单元格添加控制的方法,代码如下

Button btnModify = new Button();

btnModify.Text = "Modify";

btnModify.Click += new EventHandler(btnModify_Click); //添加相应事件

btnModify.CommandName = "btnModify_Click";

btnModify.CommandArgument = 1;

cell = new TableCell();

cell.Controls.Add(btnModify);

row.Cells.Add(cell);

结下来要构建这个事件,如下

protected void btnModify_Click(object sender, EventArgs e)

{

int cityId = Convert.ToInt32(((Button)sender).CommandArgument);//获得传递的参数

//您的代码

}

以上就可以完整地实现单元格中动态的加载一个按钮和响应的事件。

不过,发现了一个问题,并非事件每次都能响应,表现的也不是很有规律,不知道是什么缘故。

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2012/11/16/2772874.html,如需转载请自行联系原作者