C# 如何在asp:gridview中动态创建列
我想在Gridview中创建一个列,其值充当超链接。 超链接url由数据集提供的部分组成C# 如何在asp:gridview中动态创建列,c#,asp.net,gridview,C#,Asp.net,Gridview,我想在Gridview中创建一个列,其值充当超链接。 超链接url由数据集提供的部分组成 Foreach(dRow in Tables[0].Row) { url = "<a href=ClientView.aspx?\"" + dRow["client_id"].ToString() +"</a>"; } Foreach(表[0]中的dRow.行) { url=“在标题中使用模板字段,您不需要动态创建它: <asp:GridView runat="server" ID
Foreach(dRow in Tables[0].Row)
{
url = "<a href=ClientView.aspx?\"" + dRow["client_id"].ToString() +"</a>";
}
Foreach(表[0]中的dRow.行)
{
url=“在标题中使用模板字段
,您不需要动态创建它:
<asp:GridView runat="server" ID="gridView1" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:hyperlink runat="server" id="hlClientView"
NavigateUrl='<%# String.Format("ClientView.aspx?client_id={0}", Eval("client_id")) %>'
Text='<%# Eval("client_id") %>'>
</asp:hyperlink>
</HeaderTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
要添加到现有代码中,请添加templatefield
您的GridView
是在标记中声明的,还是在代码隐藏文件中创建的?它在标记中使用autogenerate=false
可以显示GridView
标记吗?
<asp:GridView runat="server" ID="gridView1" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:hyperlink runat="server" id="hlClientView"
NavigateUrl='<%# String.Format("ClientView.aspx?client_id={0}", Eval("client_id")) %>'
Text='<%# Eval("client_id") %>'>
</asp:hyperlink>
</HeaderTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:GridView ID="GridView1" runat="server" Width="100%" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="Sno" HeaderText="SNo" />
<asp:BoundField DataField="ClientName" HeaderText="Name" />
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton runat="server" id="gvlbtnClientVIew"
PostBackUrl='<%# "ClientView.aspx?client_id=" + Eval("client_id") %>'
Text='<%# Bind("client_id") %>'>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>