首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向ASP.NET GridView添加链接列

问向ASP.NET GridView添加链接列
EN

Stack Overflow用户
提问于 2009-12-05 07:05:48
回答 5查看 78.4K关注 0票数 22

我想输出一个可点击的新闻标题列表。到目前为止,我可以让它打印出标题列表,因为我在VS2010的designer视图中拖放了NewsHeadline表。你认为我应该如何使列表元素可点击?我寻找URL属性,但没有看到它。我需要用

代码语言:javascript
复制
 <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>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-12-05 07:08:49

您需要将列类型从BoundColumn更改为超链接列。

代码语言:javascript
复制
   <asp:hyperlinkfield headertext="NewsHeadline"
      datatextfield="NewsHeadline"
      datanavigateurlfield="NewsURL" 
      datanavigateurlformatstring="http://{0}" />

除了进行此更改之外,您还需要确保选择的是URL或可用于创建新闻文章链接的内容。在上面的示例中,我假设URL是您可以从SQL源中抓取的内容。如果它是一个ID,只需像这样键入url的其余部分..."~/MyNewsPage.aspx?NewsID={0}"...

票数 33
EN

Stack Overflow用户

发布于 2009-12-05 07:12:55

请改用hyperlinkfield:

代码语言:javascript
复制
<asp:hyperlinkfield datatextfield="NewsHeadline"
        datanavigateurlfields="NewsID"
        datanavigateurlformatstring="~\newsdetails.aspx?Id={0}"  />
票数 9
EN

Stack Overflow用户

发布于 2009-12-05 07:11:32

您需要使用超链接字段而不是BoundField,如下所示:

代码语言:javascript
复制
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
    DataSourceID="SqlDataSource1" 
    EmptyDataText="There are no data records to display.">
    <Columns>
        <asp:HyperLinkField HeaderText="NewsHeadline" SortExpression="NewsHeadline" DataTextField="NewsHeadline" NavigateUrl="..." />
    </Columns>

​

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1850247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档