【问题标题】:Rounding issue in RadNumericTextBoxRadNumericTextBox 中的舍入问题
【发布时间】:2012-11-24 02:38:04
【问题描述】:

我有一个 RadNumericTextBox 如下:

  <telerik:RadNumericTextBox ID="txtCurSalBudget" runat="server" Enabled="False" >
                <NumberFormat AllowRounding="false" />
                </telerik:RadNumericTextBox>

当我将值 23190642.0 移动到此文本框时,它会被舍入,结果是 23190640,即使 AllowRounding="false"。

如何避免这种四舍五入,以便我得到实际值?

【问题讨论】:

  • 为什么要指定Enabled="False"?您是否在运行时启用控件?我是否正确,您希望保持包含零指定的精度?

标签: asp.net c#-4.0 telerik telerik-ajax


【解决方案1】:

如果您始终希望始终保持小数点后一位的精度,您可以更改 NumberFormat 元素以反映这一点:

    <telerik:RadNumericTextBox ID="RadNumericTextBox1" 
                               runat="server" 
                               Culture="en-US">
        <NumberFormat AllowRounding="false" 
                      PositivePattern="n.0" 
                      NumericPlaceHolder="n" />
    </telerik:RadNumericTextBox>

此示例 NumericTextBox 是否满足您的需求?

【讨论】:

  • 我正在将浮点值移动到 radnumeric 文本框。由于浮点数的精度只有 7 位,我在 radnumeric 文本框中得到 23190640 而不是 23190642。我已将浮点数更改为十进制,它工作正常.
【解决方案2】:

使用此代码在您的文本框中显示十进制数字:

<telerik:RadNumericTextBox ID="txtCurSalBudget" runat="server" Enabled="False" >
                <NumberFormat AllowRounding="false" DecimalDigits="2" GroupSeparator=" " />
</telerik:RadNumericTextBox>

属性

十进制数

允许您输入的十进制数字显示在您的文本框中。

【讨论】:

    猜你喜欢
    • 2013-04-12
    • 2013-09-18
    • 1970-01-01
    • 2011-08-23
    • 2011-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多