再说一遍,我知道这个问题已经回答过很多次了,但我对所有的例子都感到困惑。所以我会按我需要的方式去问。
我有一个SQL表,supplylinks
。它有rowid
(标识pk)、title
(varchar)、link
(varchar)和description
(varchar)。
链接字段是一个实际的超链接,一个url。
因此,为了论证起见,假设第一行是:
谷歌搜索引擎
很简单。
现在我把它加载到gridview中。
没什么特别的,都是用C代码做的。
SqlConnection conn = new SqlConnection(@"Server=DEV6\MSSQLHOSTING;Database=Intranet;Trusted_Connection=True;");
ds = new DataSet("ds");
if (type.Equals("SAIX"))
{
SqlDataAdapter da = new SqlDataAdapter("select [Title],[Link],[Description] from SupplierLinks where SuppRowID = " + index, conn);
da.Fill(ds);
}
if (type.Equals("Domian Related Links"))
{
SqlDataAdapter da = new SqlDataAdapter("select [Title],[Link],[Description] from DomainLinks where SuppRowID = " + index, conn);
da.Fill(ds);
}
if (ds.Tables.Count > 0)
{
if (ds.Tables[0].Rows.Count > 0)
{
grdLinks.DataSource = ds;
grdLinks.DataBind();
}
}
else
{
lblDisp.Text = "";
lblError.Text = "There are no links for that type";
}
没什么问题。我得到我的信息。但是我现在想把sql表返回的链接作为一个适当的链接放到gridview中,这样当有人点击链接时,他们就会被重定向到google,在这个例子中。
请帮忙。这里所有其他的编码都让我困惑。很多人说我必须在gridview中添加一个超链接列。但在哪里?
我走得太远了,然后就不知道该绑什么了。
<asp:GridView ID="grdLinks" runat="server">
<Columns>
<asp:HyperLinkField DataNavigateUrlFields="col2"
</Columns>
</asp:GridView>
就像我说的,我迷茫了。
提前谢谢你。
最佳答案
<Columns>
<asp:HyperLinkField DataTextField="LeadID" DataNavigateUrlFields="LeadID" DataNavigateUrlFormatString="LeadInformation.aspx?LeadID={0}" Text="Lead ID" />
<asp:BoundField DataField="DateTime" HeaderText="Date Updated" />
<asp:TemplateField>
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Bind("LeadID") + Request.QueryString("type") %>' Text=""></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
希望这对你有帮助