0

私はグリッドビューを持っています。そのデータ ソースは、データベースからロードされるデータ テーブルです。このグリッドビューには、テンプレート列があります。

<asp:TemplateField HeaderText="Product Type" SortExpression="ProductID">
                                        <ItemStyle CssClass="MP-table-tb-display-item" />
                                        <ItemTemplate>
                                            <div class="MP-table-tb-display-main">
                                                <asp:LinkButton ID="lnkview" CommandArgument='<%# Eval("ProductID") %>' CommandName="Viewproduct"
                                                    runat="server" CausesValidation="False" OnClick="lnkview_Click"><h4>
                                        <%# Eval("Name") %>
                                    </h4>
                                                </asp:LinkButton>
                                            </div>
                                            <br />
                                            <div class="MP-table-tb-display">
                                                <p>
                                                    <span>KEY</span><%# Eval("[product_type_key]") %></p>
                                                <br />

                                                <a target="_blank" href='<%# Eval("SourceURL") %>'>Source</a>
                                            </div>
                                        </ItemTemplate>
                                    </asp:TemplateField>

これで、ソースのハイパーリンクは、データが に利用可能な場合にのみ表示され<%# Eval("SourceURL") %>ます。SourceURL 値を に取得できない場合RowDatabound Event。ガイドしてください。

私もこれを計画していますが、これは適切に機能していません。

<a target="_blank" href=' <%= Eval("SourceURL")!=null ? Eval("SourceURL") : "style='display: none'" %> />'>  Source</a>
4

2 に答える 2

3

代わりにこれを使用してください

<asp:hyperlink  Target="_blank"  NavigateUrl='<%# Eval("SourceURL") %>' Visible = '<%# Eval("SourceURL") == null ? false : true %>' >

同様に、<a>タグを使用してその可視性を制御できます。if 条件は、href 属性ではなく Style 属性に入ります。このようなもの

Style=display:Eval('some_val') == null ? none : block
于 2012-12-18T06:56:36.250 に答える
1

これを試して :

<a target="_blank" href='<%#(String.IsNullOrEmpty(Eval("SourceURL").ToString()) ? "" : Eval("SourceURL"))'%> style='display: none'>Source</a>

ありがとう

于 2012-12-18T07:02:54.833 に答える