(转)DataGrid的ItemDataBound事件 dodo

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 事件。此事件提供了在客户端显示数据项之前访问该数据项的最后机会。利用DataGridItemDataBound事件,我们可以轻松实现一些实用的功能。

 

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);

    }

}

原文地址:https://www.cnblogs.com/zgqys1980/p/737788.html