【问题标题】:ASP: Format number with Eval and 3 sectionsASP:带有 Eval 和 3 个部分的格式编号
【发布时间】:2013-10-02 13:13:58
【问题描述】:

我有一个带有标签的 ListView,我在其中放置了一个数字。正常格式是这样的:

Text='<%# Eval("JustaNumber", "{0:#,##0.00}")%>

但是……

我想要基于“JustaNumber”值的不同格式。我想包含正数的符号加号,负数的减号和零的符号。 我认为这适用于具有 3 个部分格式的正常格式,但不,它没有。我只得到第一种格式(总是带有加号)。

Text='<%# Eval("JustaNumber", "{0:+ #,##0.00;(- #,##0.00);(#,##0.00)}")%>

我忽略了一些东西,也许我的知识不够,但我被困在这里......

有人可以提示我在哪里进一步寻找解决方案吗?网上搜了很多,答案都是1段格式。

提前致谢。

【问题讨论】:

  • 您可以创建一个方法并在aspx页面中使用它。看那个:stackoverflow.com/questions/8069970/…
  • 谢谢,这将是一个解决方案。但是,3 节格式是标准格式语法。为什么这不适用于 Eval?

标签: asp.net numbers format eval


【解决方案1】:

您可以使用这种方法以任何您想要的方式格式化您的文本。每当我的格式超出非常简单的格式或计算时,我通常会采用这种方法。是的,您可以在您的方法中访问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"));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多