我有一个带有标签的ListView,我在其中放了一个数字。正常格式化将是这样的:
Text='<%# Eval("JustaNumber", "{0:#,##0.00}")%>
但是...
我想要一个基于'JustaNumber'值的不同格式。我想在正数中包含符号加号,为负数包含减号,零则为零。 我认为这可以使用3段格式的普通格式,但不,它没有。我只得到第一种格式(总是带加号)。
Text='<%# Eval("JustaNumber", "{0:+ #,##0.00;(- #,##0.00);(#,##0.00)}")%>
我忽视了一些事情,也许我的知识还不够,但我被困在这里......
有人可以给我一个提示,在哪里寻找解决方案吗?在互联网上做了很多搜索,但答案都是1节格式。
提前致谢。
答案 0 :(得分:0)
您可以使用此方法以任何方式格式化文本。每当我的格式化超出非常简单的格式化或计算时,我通常会采用这种方法。是的,您可以在方法中访问Eval()
,只要它作为数据绑定操作的一部分被调用。
这似乎有效。 Eval()
可能只支持string.Format
的子集,但我没有测试您的原始解决方案。
<asp:label runat="server" Text='<%# GetText()")%>
protected string GetText()
{
return string.Format("0:+ #,##0.00;(- #,##0.00);(#,##0.00)",
Eval("JustaNumber"));
}