DataGrid之ItemCommand事件
如下代碼是將 e.Item.Cells[3].Text;的值傳個下一個跳出的頁面,這個格式要
記住它支持ItemCommand事件,給DataGrid添加這個事件的方法是:點擊其屬性面板中的閃電按鈕,
仔細找找,一定能找,我給你圖,你看看,雙擊那個itemcommand即可,然后進入后台代碼,在代碼中添加
如下事件 說明一點的是:sel是在屬性生成器里找一個按鈕列,然后給其命令名稱為sel,還有傳的值是
第四行綁定列的內容。 問號串值不錯的說,
Response.Redirect ("messageboardlx.aspx?states=1");
調用messageboardlx.aspx頁,並將值放入states中。等待下頁使用。
private void DataGrid2_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.Item.ItemIndex>- 1)
switch(e.CommandName)
{
case "sel":
{
string strUrl="";
strUrl="URL.aspx?id="+e.Item.Cells[3].Text;
myData.openwin(strUrl,"600","480",this.Page);
break;
}
}
}
當項被數據綁定到 DataGrid 控件后,將引發 ItemDataBound 事件。此事件提供了在客戶端顯示數據項之前訪問該數據項的最后機會。利用DataGrid的ItemDataBound事件,我們可以輕松實現一些實用的功能。
private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataRowView drv = (DataRowView)e.Item.DataItem;
//設置每一行的序號
int num = e.Item.ItemIndex + 1;
e.Item.Cells[0].Text = num.ToString();
//“性別”字段在數據庫中是以“0”和“1”存儲的,現在以“男”和“女”展現給用戶
int sex = Convert.ToInt32(drv["FSex"]);
e.Item.Cells[2].Text = (sex == 0 ? "男" : "女");
//將“婚否”字段綁定到 CheckBox
int married = Convert.ToInt32(drv["FMarried"]);
CheckBox chk = (CheckBox)e.Item.FindControl("CheckBox1");
chk.Checked = (married == 0 ? false : true);
}
}