1
假設我有一個DecimalPlaces = 2的NumericUpDown。NumericUpDown.Value未舍入到DecimalPlaces
用戶鍵入「1.233」(對他們來說不知道,不小心敲擊了「3」鍵兩次),然後從控件中導航。此輸入現在在控件中顯示爲「1.23」。但是,Value屬性現在是1.233。 因此,它似乎他們正在使用的值1.23的時候,實際上,他們使用的值1.233用戶。 有什麼辦法可以讓NumericUpDown返回「正確的」值:1.23?
據我所知,小數位數屬性「...設置小數數顯示」,但隨後該用戶不能確定什麼值將通過簡單地閱讀屏幕中。
一種方法是始終忽略所有NumericUpDowns的Value屬性,並使用Text屬性(隱藏於IntelliSense中)並對該屬性執行decimal.Parse() - 但這看起來很尷尬。另一點是,如果在「1.233」,然後在用戶鍵入導航與控制了,那麼,當ValueChanged事件發生的Text屬性仍然是「1.233」。
這是一種醜陋,但你可以配合到'ValueChanged'事件,有這樣的事情在那裏'numericUpDown1.Value = Math.Truncate(100 * numericUpDown1.Value)/ 100 ' –