2012-07-05 80 views
1

在.NET 4 C#WinForms應用程序中,我在特定窗體上有幾個NumericUpDown控件。在運行時輸入要測試的值時,除了在一個控件上,最小值和最大值按預期執行。爲什麼我的NumericUpDown控件不遵守它的.Minimum屬性?

我已將.Maximum設置爲86400,將.Minimum設置爲3來解決問題。 (!)在運行時,它僅允許來自值86400

設計師(自動生成)的代碼如下所示:

this.numEvilControl.Minimum = new decimal(new int[] { 
3, 
0, 
0, 
0}); 

我已經清理和重建項目,但無濟於事。

什麼原因導致該控件產生自己的.Minimum值?我不知道從哪裏開始尋找。

+1

我認爲這是邪惡的 - 小數構造是什麼?您可以使用'3m'作爲值爲3的「decimal」。 – 2012-07-05 21:22:54

+0

自動生成的代碼看起來很奇怪,但它是將小數初始化爲值3的有效方法。代碼中的其他任何地方都可能存在錯誤。您需要發佈一個顯示錯誤的最小示例。 – tinman 2012-07-05 21:25:04

+0

您生成的代碼有效。你可以添加更多的代碼嗎? – JCab 2012-07-05 21:26:00

回答

2

而不是刪除的問題,我想我會後我如何發現問題...

事實證明,有一個.ValueChanged事件這是修正值(這我早就忘了) 。

因此,對於所有可能未來都有此問題的人,請在開始疑惑爲什麼要改變屬性之前檢查您的事件!

+1

:-)順便說一句,大約8年前,你不會生氣 - 我記得這一個:http://support.microsoft.com/kb/814347 – dash 2012-07-05 21:29:53

相關問題