添加指向gridview中所有单元格的链接

时间:2012-05-07 15:09:10

标签: c# gridview cells

我有一个数据源未知或行和列的数据源。我正在使用一个网格视图,它被设置为自动生成列。我需要将每个单元格中的每个项目转换为链接按钮以进行回发处理。我知道如何动态地将控件添加到已知的行和单元格,但是当我不知道列名称时,它很难。关于如何产生这些结果的任何建议?

1 个答案:

答案 0 :(得分:3)

以此为出发点:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        foreach (TableCell cell in e.Row.Cells)
        {
            HyperLink myLink = new HyperLink();
            myLink.NavigateUrl = "somewhere.aspx";
            if (cell.Controls.Count > 0)
            {
                while (cell.Controls.Count > 0)
                {
                    myLink.Controls.Add(cell.Controls[0]);
                }
            }
            else
            {
                myLink.Text = cell.Text;
            }
            cell.Controls.Add(myLink);
        }
    }
}

注意:我已根据您的标记在C#中编写了解决方案,但我注意到您的上一条评论是在VB中。如果您需要我在VB中重新发布,请告诉我(在这种情况下,您应该更新标签)。