none
关于NumericUpDown控件最大最小值的问题 RRS feed

  • 问题

  •     我在WPF的开发过程中使用了NumericUpDown控件,设置的最大值是9999.999,最小值是0,增量是1。此时如果控件当前的Value值是9999.000~9999.999之间的数值时,点击向上的按钮,画面显示的内容就会加1,即使在代码中强制将Value设置成原来的值,画面显示依然是加1后的值

        例如:Value是9999.200,此时按向上的按钮,画面显示内容将变成10000.200,而不是我想要的9999.999。即使我在textchanged事件里面讲Value和Text的值设置成9999.999画面的显示也还是10000.200。

         有什么办法解决这种问题。不让显示的内容为10000.200,而为9999.200。

    2012年3月6日 0:31

答案

全部回复

  • Hi 开发者老王,

      你可以通过改变这两个属性实现增加为小数点以后的数值:

    this.numericUpDown1.DecimalPlaces = 3 //设置小数的位数.
    this.numericUpDown1.Increment =0.001  //设置增量.


    orichisonic http://blog.csdn.net/orichisonic If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".

    2012年3月6日 2:23
  • Hi 开发者老王,

      你可以通过改变这两个属性实现增加为小数点以后的数值:

    this.numericUpDown1.DecimalPlaces = 3 //设置小数的位数.
    this.numericUpDown1.Increment =0.001  //设置增量.


    orichisonic http://blog.csdn.net/orichisonic If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".

    你好!

         最小增量这部分就是要设计成增加1,需要解决的问题是当增加的值大于最大值的时候如何将其设置成最大值。包括Value TEXT 和显示部分。现在Value和TEXT已经设置了,但是显示部分没有变。

    2012年3月6日 4:33
  • 你好,

    我先请问下你用的是哪个 NumericUpDown for  WPF 控件:MSDN Sample的http://archive.msdn.microsoft.com/wpfsamples#controlcustomization 还是WPF Toolkit Extension的 http://wpftoolkit.codeplex.com/wikipage?title=NumericUpDown ?

    这两个控件我都测试过了,没有你的这个问题。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年3月6日 7:51
    版主
  • 是 WPF Toolkit Extension的控件,在Value值+Increment 值大于最大值的时候点击向上的箭头,画面显示值超出了最大值。
    2012年3月6日 9:07
  • 你用 DoubleUpDown 试试看,WPF Toolkit Extension针对不同数据类型都设计了控件。

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年3月6日 9:15
    版主
  • 非常感谢,麻烦问一下这个控件在3.5下可以使用吗?

    2012年3月7日 0:23
  • 如果你直接下载的编译好的dll, 他是基于CLR 4的。不过你可以看下他的源代码,是提供了3.5的解决方案的: 

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年3月7日 2:06
    版主
  • 谢谢~~~

    2012年3月7日 10:16