在GridView的TemplateField中使用HyperLinkField

时间:2019-02-20 20:46:55

标签: asp.net gridview webforms

我正在尝试在GridView的TemplateField中使用asp:HyperLinkField,但是当在TemplateField内部使用HyperASPField时,ASP无法识别它。它似乎只能识别asp:HyperLink。我正在设置一个条件,如果数据库返回一个空值“”,则显示不带超链接的“ NA”,否则它将显示HyperLink。这是代码:

<div class="examples">
  <div class="container">
    <div class="box"></div>
    <div class="box"></div>
  </div>
  <div class="container">
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
  </div>
  <div class="container">
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
  </div>
</div>

我尝试使用HyperLink尝试此操作,它可以工作,但实际上并不从数据库返回数据,它实际上在我的列中返回了文本“ http:// {0}”。我假设这是因为我使用的是“文本”而不​​是“ NavigateUrl”,但是当使用后者时,根本不会显示任何数据。

                        <asp:TemplateField HeaderText="My Header">
                        <ItemTemplate>
                            <asp:HyperLinkField runat="server" DataTextField="Contracts"  datanavigateurlfields="Contracts" DataNavigateUrlFormatString='<%# Convert.ToString(Eval("Contracts")) == "" ? "NA" : "http://{0}" %>'></asp:HyperLinkField>
                        </ItemTemplate>
                    </asp:TemplateField>

0 个答案:

没有答案