2010-01-19 52 views
6

我在Web表单已经一个gridview,我在我的web表单的保存按钮用下面的代码:获取的GridView细胞的头文本

foreach (GridViewRow row in gvList.Rows) 
      if (row.RowType == DataControlRowType.DataRow) 
      { for (int i = 0; i < row.Cells.Count; i++) 
       { 
        string headerRowText = ???; 

我怎样才能得到当前单元格的标题文本。

+1

顺便说一句,如果你想知道为什么这个循环没有打到标题行,这是因为你只是检查DataRows。有一个DataControlRowType.Header仅用于标题行。 – Eilon 2010-01-19 05:19:23

回答

21

我解决它使用:

string headerRowText = gvList.HeaderRow.Cells[i].Text; 
3

gvList.Rows [0]应该是您的标题行。你应该可以得到

gvList.Rows[0].Cells[i] 

这只是为了获得细胞本身。您需要进入单元格并获取Controls [0]并将其转换为适当的类型,然后获取Text属性。

3
string headerRowText = gvList.HeaderRow.Cells[i].Text; 

返回空字符串对我来说,没有什么工作是:

GridView1.Columns[i].HeaderText 
1

设置GridView控件属性UseAccessibleHeaderText=true

然后,在代码 - 后面,获得第j列使用:

GridView1.HeaderRow.Cells[0].Text