2017-08-25 90 views
0

我使用VB.Net 2008.DateTimePicker默認值

我有兩個DateTimePicker。第一個默認值是8/24/2017 1:35 PM(因爲它是在8月24日創建的)。第二個默認值是當前日期和時間。我沒有在屬性中設置它們的默認值。

這只是奇怪我,他們有不同的默認值。無論如何,我的理想值是當前的日期和時間。

我也遇到過我以前的項目混亂有關的DateTimePicker它一直默認時間1:32 PM,其中時間應該被忽略,格式爲「短」,默認值爲當前日期,不包括時間

任何人都可以解釋爲什麼會發生?

預先感謝您。

回答

0

根據我的經驗,除非另有說明,否則DateTimePicker在其Value屬性中包含當前日期和時間。爲什麼這不應該發生你的控制之一,我不知道。在那種情況下,我建議簡單地刪除該控件並添加一個新控件。希望這會表現得如預期。

有沒有這樣的事情作爲「無視」時間的DateTimePickerDateTimePickerValue屬性的類型爲DateTimeDateTime總是具有日期組件和時間組件。您可以設置Format和可選的CustomFormat屬性以僅顯示日期,僅顯示時間或僅顯示其中的一部分,但與Value屬性中存儲的內容完全相同。

就像任何其他DateTime值,如果你想有一個DateTimePickerValue代表只是一個日期,那麼你應該零的時間。如果您想使用當前日期而沒有時間,則使用DateTime.Today,其中DateTime.Now會爲您提供當前時間以及當前日期。如果要將任何DateTime值(包括ValueDateTimePicker)的時間歸零,那麼您將獲得其Date屬性。請注意,這不會影響原始值,但會創建一個具有相同日期和時間歸零的新值DateTime,例如,

Dim selectedDate = myDateTimePicker.Value.Date 

注意DateTime.Today只是返回DateTime.Now.Date

+0

是的,爲了安全起見,我使用myDateTimePicker.Value.Date – angel

+0

這不是安全的情況。您使用適合該任務的內容。如果你只想要一個日期,那麼你使用'Date'屬性。你這樣做是因爲它是你的場景中打算使用的。如果你使用它「以防萬一」,那麼我建議你沒有真正設計你的應用程序。 – jmcilhinney