2011-06-08 74 views
2

我想将gridview.columns [0]设置为超链接。我尝试了很多在不同网站上提到的工作。我将一个列表<>绑定到网格。我需要将第一列设置为超级链接,点击该链接后,它应该被重定向到包含相应项目的页面。 我需要使用哪个事件,以及如何从列表中传递该值。如何在GridView中设置一列作为自动生成的超链接

任何帮助将提前

+1

是你的gridview行自动生成? – 2011-06-08 11:09:04

回答

7
void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     var firstCell = e.Row.Cells[0]; 
     firstCell.Controls.Clear(); 
     firstCell.Controls.Add(new HyperLink { NavigateUrl = firstCell.Text, Text = firstCell.Text }); 
    } 
} 

被警告说,如果你将数据绑定到网仅首次页加载,那么你的改变将消失。

+0

嘿,谢谢你的....它工作正常。 – tinu 2011-06-08 11:37:54

+0

嗨,我也想知道如何隐藏gridview中的列。 如果(e.Row.RowType!= DataControlRowType.Pager) e.Row.Cells [1] .Visible = false; } 这一个,它的工作原理,但它给出了一个错误。 – tinu 2011-06-08 11:42:26

2

helpful..Thanks你不得不做出这样的列模板栏目

<asp:TemplateField HeaderText=""> 
    <ItemTemplate> 
    <asp:HyperLink ID="HyperLink1" runat="server" Text="test" NavigateUrl='<%# Eval("fieldName", "show.aspx?ID={0}") %>'></asp:HyperLink> 
    </ItemTemplate> 
</asp:TemplateField>