【问题标题】:HyperLink Column in GridViewGridView 中的超链接列
【发布时间】:2013-01-31 18:22:32
【问题描述】:

我在 GridView FirstNameLastName 中有 2 列。我希望 FirstName 列中的所有行都位于超链接中。我已经尝试过了,但没有奏效。我该怎么做?

解析器错误

Parser Error Message: Databinding expressions are only supported on objects 
that have a  DataBinding event. System.Web.UI.WebControls.HyperLinkField does not
have a DataBinding event. 

代码:

<asp:GridView ID="CustomersGridView" runat="server" AutoGenerateColumns="False">
        <Columns>

        <asp:BoundField DataField="FirstName" HeaderText="First Name" />
        <asp:BoundField DataField="LastName" HeaderText="Last Name" />

        <asp:HyperLinkField Text='<%# Eval("FirstName") %>' />

    </Columns>
</asp:GridView>

【问题讨论】:

    标签: c# asp.net gridview hyperlink


    【解决方案1】:

    试试这个..

    <asp:HyperLinkField 
          DataTextField="FirstName" 
          HeaderText="First Name" 
          SortExpression="FirstName" 
          DataNavigateUrlFields="FirstNameID" 
          DataNavigateUrlFormatString="PersonDetails.aspx?FirstNameID={0}" /> //use if you want to nevigate to other page
    

    【讨论】:

    • 我试过这个,但我不能点击任何字段作为超链接。我的错误在哪里? 我想成为“...”。
    • 虽然我没有尝试过,也许我不明白你想说什么,但如果你想从你的链接中导航谷歌,那么你可以将 DataNavigateUrlFormatString 更改为 www.google.com 而不是 PersonDetails.aspx
    【解决方案2】:

    尝试使用DataTextField property

    <asp:HyperLinkField DataTextField="FirstName" />
    

    【讨论】:

      【解决方案3】:

      您需要将其转换为模板字段:

      <asp:GridView ID="CustomersGridView" runat="server" AutoGenerateColumns="False">
         <Columns>
            <asp:BoundField DataField="FirstName" HeaderText="First Name" />
            <asp:BoundField DataField="LastName" HeaderText="Last Name" />
            <asp:TemplateField HeaderText="FirstName" SortExpression="FirstName">
               <asp:itemtemplate>
                  <asp:HyperLinkField Text='<%# Eval("FirstName") %>' />
          ...
      

      【讨论】:

      • 我试过这样 但是如何创建标题“First Name”?
      • 编辑了我的答案,这样您就可以看到如何将标题文本放入其中。仅供参考——如果您使用的是 VS,您可以探索 gridview 向导、数据源向导或智能感知,您将以这种方式了解您的选择。
      猜你喜欢
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      • 2011-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-28
      • 1970-01-01
      相关资源
      最近更新 更多