我需要替换每个数据绑定项的链接。我已经检查了数据行的数据绑定事件。问题是我无法控制链接的显示位置。我试图远离 javascript,并将其主要保留在后面的代码中。下面是我的asp代码和我背后的代码。我还想尽量保持相同,而不是更改为 html 模板项。我使用的过程如下。
我有一个自定义对象,其中包含博客条目的所有字段和数据。这些项目被放入一个列表中,然后提供给数据网格。
<asp:GridView ID="grdRecentNews" runat="server" AutoGenerateColumns="False" DataKeyNames="Key"
GridLines="None" PageSize="4" ShowHeader="False"
AllowPaging="True">
<PagerSettings Visible="False" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<blockquote>
<%-- <strong><a href=**"News.aspx"**>--%>
<strong><a href="News.aspx">
<%#Eval("NewsDesc")%></a></strong>
<br />
<span class="italic">
<%#Eval("NewsDate")%></span>
</blockquote>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
这是我在 Databound 事件中的代码,问题是我只想为 Rss 对象的一个字段提供链接。如下。我想用 rssobject 的链接属性为添加到数据网格的每个项目替换 News.aspx"。
Protected Sub grdRecentNews_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles grdRecentNews.RowDataBound
If e.Row.DataItem IsNot Nothing AndAlso e.Row.DataItem.ToString = "RssEntry" Then
Dim curItem As RssEntry = CType(e.Row.DataItem, RssEntry)
e.Row.Attributes.Add("href", curItem.Link) 'data-url
End If
End Sub