天天看點

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,如需轉載請自行聯系原作者

繼續閱讀