2014-03-28 27 views
-4

我正在製作月曆,但我需要將其設置爲某一年。我正在使用Visual Studios 2013並在C#中編碼。我的代碼我試過是Month Calendar C#

monthCalendar1.SelectionStart.ToShortDateString(2013 - 06 - 04); 

我的問題是,我無法找到的代碼,將日期設定爲在加載時我想要什麼。我想使它啓動,並有日期爲4月,06,2013年

+4

任何意外的行爲/問題/錯誤? – helb

+3

請澄清你的問題。 – Dmitry

+2

你究竟想要做什麼?您是否閱讀過[ToShortDateString']文檔(http://msdn.microsoft.com/zh-cn/library/system.datetime.toshortdatestring.aspx)以查看它的作用? –

回答

0

MSDN

設置日期範圍:

this.MonthCalendar1.SelectionStart = 
     new System.DateTime(DateTime.Today.Year, vacationMonth, today.Day-1); 
this.MonthCalendar1.SelectionEnd = 
     new System.DateTime(DateTime.Today.Year, vacationMonth, today.Day+6); 

設置默認日期:

​​
+2

只需要複製和粘貼一些代碼就不會幫助OP瞭解他們在解決這個問題時做了什麼錯誤,即使現在通過提供現成的解決方案「幫助」,也不會幫助OP類似的情況,也不會幫助任何未來的訪問者有類似但不是相同的問題。 –

1

那麼,你的代碼示例— 它甚至編譯? —不會做你認爲它做的事。表達式2013 - 06 - 04整數表達式,其評估爲整數值2003(2013減去6是2007; 2007減去4是2003)。

假設您使用的是System.Windows.Forms.MonthCalendar,則屬性SelectionStartDateTime的值。你的代碼試圖採用該屬性的當前值,並使用當前文化的短日期格式('en-US'爲M/d/yyyy)將其轉換爲字符串。然後你扔掉那條繩子。而ToShortDateString()沒有任何參數,所以你幾乎肯定會得到一個編譯器的抱怨。

如果你想設置選擇開始,你可以嘗試沿着線的東西:

monthCalendar1.SelectionStart = new DateTime(2013,4,6) ; // 6 April, 2013 

然後你可以設置選擇結束點適當的東西。例如:

monthCalendar1.SelectionEnd = monthCalendar.SelectionStart.AddDays(7) ;