我想输出一个可点击的新闻标题列表。到目前为止,我可以打印出一个标题列表,因为我在VS 2010中拖放了DesignHeadline表的设计器视图。你认为我应该使列表元素可以点击?我找了一个URL属性,但是我没看到它。我需要包装一个<一个href?
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="sqlDataSource1" EmptyDataText="There are no data records to display."> <Columns> <asp:BoundField DataField="NewsHeadline" HeaderText="NewsHeadline" SortExpression="NewsHeadline" /> </Columns> </asp:GridView> <asp:sqlDataSource ID="sqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString1 %>" ProviderName="<%$ ConnectionStrings:ConnectionString1.ProviderName %>" SelectCommand="SELECT [NewsHeadline] FROM [NewsTable]"></asp:sqlDataSource> </form>
解决方法
您需要将列类型从BoundColumn更改为超链接列。
<asp:hyperlinkfield headertext="NewsHeadline" datatextfield="NewsHeadline" datanavigateurlfield="NewsURL" datanavigateurlformatstring="http://{0}" />
除了进行此更改外,您还需要确保您选择的URL或可用于创建新闻文章链接的内容。在上面的例子中,我假设URL是可以从你的sql源中获取的。如果它是一个ID,只需输入这个URL的其余部分…“〜/ MyNewsPage.aspx?NewsID = {0}”…