我通常使用此语法在标签中显示单位符号:ej。 5' 230€
<asp:Label runat="server" Text='<%# Eval("TotalAmount","{0:#,###.##} €") %>' id="LabelTotal"/>
丑陋的是,即使值为null或为空,也会显示符号。然后我希望这个符号被压制。
任何人都知道如何做到这一点? 马丁
答案 0 :(得分:1)
您可以使用以下代码段
<asp:Label runat="server" Text='<%# Convert.ToDecimal(Eval("TotalAmount")) > 0 ? string.Format("{0:C}", Convert.ToDecimal(Eval("TotalAmount"))) : string.Empty %>' id="LabelTotal"/>
如果要评估的值可以包含null
值,则需要在转换前先检查IsNullOrEmpty
。
<asp:Label runat="server" Text='<%# !string.IsNullOrEmpty(Eval("TotalAmount").ToString()) ? Convert.ToDecimal(Eval("TotalAmount")) > 0 ? string.Format("{0:C}", Convert.ToDecimal(Eval("TotalAmount"))) : string.Empty : string.Empty %>' id="Label1"/>