0

我在gridview中有linkbutton控件:

在此处输入图像描述

我正在尝试从这些控件中获取文本:

protected void hoursReportGridView_OnRowDataBound(Object sender, GridViewRowEventArgs e)
{
    System.Diagnostics.Debug.WriteLine(e.Row.Cells[4].Text);
}

这是结果:

Task











 

我做错了什么,我该如何进入文本?

4

3 回答 3

1

您可以使用FindControl

if (e.Row.RowType == DataControlRowType.DataRow)
{
    LinkButton btn= ((LinkButton )e.Row.FindControl("YourControlId"));
    var text = btn.Text;
    //Here you have btn object
}
于 2013-10-30T16:30:18.277 回答
1

你试过像下面这样的吗?

if(e.Row.RowType == DataControlRowType.DataRow)
{
    LinkButton btn = (LinkButton)e.Row.FindControl("btn");
}
于 2013-10-30T16:32:11.253 回答
1

您需要跳过标题行,只处理数据行,如下所示:

protected void hoursReportGridView_OnRowDataBound(Object sender, GridViewRowEventArgs e)
{
    // Ignore all other rows types (header, footer, etc.) except data rows
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
        System.Diagnostics.Debug.WriteLine(e.Row.Cells[4].Text);
    }
}

有关网格视图中数据行类型的更多信息,请阅读GridViewRow.RowType 属性

于 2013-10-30T16:33:06.710 回答