启用AllowSorting时,ASP.NET GridView标题行文本为空

时间:2013-04-28 23:07:11

标签: asp.net

我正在解决有趣的问题。我在我的应用程序中有一个gridview,按下按钮后(在OnClick事件中)我试图获得选定的行和标题行。

当网格不可排序时,所有工作正常(AllowSorting =" false")。这是我访问标题行单元格的方式:

GridViewControl.HeaderRow.Cells[idx].Text

但是,一旦我打开排序(AllowSorting =" True"),这种方法就不起作用了。创建了标题行,表达式GridViewControl.HeaderRow.Cells.Count返回正确的列数,但GridViewControl.HeaderRow.Cells [idx] .Text属性始终为EMPTY!然而,在页面上正确显示网格视图,包括标题列文本...

我试图在网上找到答案,但没有成功......我发现了一些类似的问题,但从未回答过......所以,有人知道如何在启用排序时获取标题行列文本吗?

提前谢谢。

PS:不建议我使用

GridVewControl.Columns[idx].Text

属性...只有2列编辑&选择命令...自动生成休息列。

1 个答案:

答案 0 :(得分:9)

这是因为当gridview可以排序时,会使用LinkBut​​ton。

您需要以下内容:

LinkButton Link = GridView1.HeaderRow.Cells[0].Controls[0] as LinkButton;

String Title = Link.Text;