当前位置:编程学习 > C#/ASP.NET >>

关于repeater绑定数据的问题

我有一个repeater。其中绑定了一个字段。
<ItemTemplate>
        <tr>
        <td align ="center"><%#Container.DataItem("remark")%></td> 
        </tr> 
</ItemTemplate>
现在的问题是 这个remark字段可能为空。所以我想让repeater能在remark字段为空的时候自动以 填充。也就是用空格代替空值得remark字段。
该如何做呢?
谢谢
--------------------编程问答-------------------- 我也想过用一个label控件来作跳板。
可以这样:
<ItemTemplate> 
        <tr>
        <td align ="center">
        <asp:Label ID="abc" runat="server" Text='<%#Container.DataItem("remark")%'></asp:Label>
        </td> 
        </tr> 
</ItemTemplate> 

然后再ItemDataBound中:
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
 If CType(e.Item.FindControl("abc"), Label).Text = "" Then '为空
     CType(e.Item.FindControl("abc"), Label).Text = " "
....

但是。我有很多字段。而且也不是很确定哪些会有空值。所以。不想用这种控件跳板的途径
我要的是其他方法。  --------------------编程问答-------------------- <td align ="center"> <%#string.IsNullOrEmpty((Eval("remark"))?"  ":Eval("remark").ToString()%> </td>  --------------------编程问答-------------------- 用三目运算符这可以了

<%#(Container.DataItem("remark")).Equals(null)?"nbsp":Container.DataItem("remark")%>
--------------------编程问答-------------------- 我是用的vb
不知道适用不 --------------------编程问答-------------------- 你这样试试看这样能显示出 不
<asp:Repeater ID="rep" runat"server">
        <ItemTemplate>
            <a href="#" target="_blank"><%#Eval("remark").ToString().Length > 0 ? Eval("remark").ToString() : " " %></a>
        </ItemTemplate>
    </asp:Repeater>

--------------------编程问答-------------------- public string GetString(Object obj)
    {
        if (obj == null || obj.ToString().Length == 0)
        {
            return " ";
        }

        return obj.ToString();
    }


 <%# GetString(Eval("字段"))%>
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,