各位大侠,我是一位新手,请教大家一个问题。
在Repeater中显示数据时,如果当前数据不为空,则显示成LinkButton形式,如果为空,则显示成label形式。<asp:Repeater id="rptGuarantor" runat="server">
<ItemTemplate>
<tr id="trItemRow" height="20" class="ItemColor item" runat="server">
<td class="Item" align="left" width="150">
<asp:LinkButton Id="lnkCustomerName" tabIndex="25" CommandName="CustomerName" Runat="server" CausesValidation="False">
<%# Util.HtmlEncode(DataBinder.Eval(Container, "DataItem.CustomerName"))%>
</asp:LinkButton></td>td> </tr>
</ItemTemplate></asp:Repeater>

解决方案 »

  1.   

    <asp:Repeater id="rptGuarantor" runat="server">
                                                                        <ItemTemplate>
                                                                            <tr id="trItemRow" height="20" class="ItemColor item" runat="server">
                                                                                                                        <td class="Item" align="left" width="150">
                                                                                    <asp:LinkButton Id="lnkCustomerName" tabIndex="25" CommandName="CustomerName" Runat="server" CausesValidation="False">
                                                                                        <%# Util.HtmlEncode(DataBinder.Eval(Container, "DataItem.CustomerName"))%>
                                                                                    </asp:LinkButton></td>td>                                                                        </tr>
                                                                        </ItemTemplate></asp:Repeater>
      

  2.   

    <asp:Repeater id="rptGuarantor" runat="server">
                                                                        <ItemTemplate>
                                                                            <tr id="trItemRow" height="20" class="ItemColor item" runat="server">
                                                                                                                        <td class="Item" align="left" width="150">
                                                                                    <asp:LinkButton Id="lnkCustomerName" tabIndex="25" CommandName="CustomerName" Runat="server" CausesValidation="False">
                                                                                        <%# Util.HtmlEncode(DataBinder.Eval(Container, "DataItem.CustomerName"))%>
                                                                                    </asp:LinkButton></td>td>                                                                        </tr>
                                                                        </ItemTemplate></asp:Repeater>
      

  3.   

    你得加个JS  或者 在后台做个判断  if(数据==“”或者数据==NULL)
    {  
    LinkButton显示
    label隐藏
     }else
    {
    LinkButton隐藏
    label显示
    }
      

  4.   

    3#给的方法是不行的(个人意见,至少我是没找到可行的方法)用C#三元运算符应该可以解决
    每个单元格内放一个LinkButton和一个Label
    用LinkButton 的 visible属性判断是否有值,如果有值就返回false 空就 返回true
    用Label 的 visible 属性判断是否有值,如果有值就返回true 空就返回false
    这个是比较简单的方法,
    Visible='<%# Convert.ToInt32(Eval("bulletincnt"))==0 %>'
    给你这个例子呢就是判断  Convert.ToInt32(Eval("bulletincnt"))是0的话就是true就是显示
    如果不是0的话就是false不显示,我觉得这个应该够清楚了,你只需判断是不是空就好拉
      

  5.   

    还有一种 你说的那么连接是不是超链接就可以实现的 如果可以换成《a> 在后台来判断也是可以的 前面绑定一个方法  后台如果空返回“<a> </a>” 不为空的话直接返回值 这样可以的