DataGrid/GridView的一些常用写法

1.在ItemCommand事件等中获取数据行关键列值

//取得关键编号
string strId = dgBrowse.DataKeys[(int)e.Item.ItemIndex].ToString();
string strType = e.Item.Cells[列序号].Text

2.在ItemDataBound事件中获取列值

if ((e.Item.ItemType != ListItemType.Header) && (e.Item.ItemType != ListItemType.Footer))
{
	DataRow drRow = ((DataRowView)e.Item.DataItem).Row;
	string strStatus =drRow["列名"].ToString(); 
	...
}

3.设置某操作列不可用

e.Item.Cells[8].Text = "--";

4.处理DataGrid模版列中的CheckBox对象

CheckBox cbSelectIt = (CheckBox)dgBrowse.Items[i].FindControl("cbSelectIt");
if(e.Item.ItemType == ListItemType.Header) 
{ 
    CheckBox cb = e.Item.Cells[0].FindControl( "CheckBoxAll ") as CheckBox; 
    ...                            
} 
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
{ 
    CheckBox cb = e.Item.Cells[0].FindControl( "CheckBoxIt ") as CheckBox;
	...
}

一些参考资料

http://msdn.microsoft.com/en-us/library/Aa289519

原文地址:https://www.cnblogs.com/shijun/p/2118127.html