Visual Studio .NET的DateTimePicker控件為用戶提供一個選擇日期/時間的簡便方法。這個控件允許你選擇日期和時間;同時,由于這個控件允許你限制輸入內(nèi)容,你可以忽略合法的日期格式。DateTimePicker控件類似于MonthView控件,后者允許你選擇一個日期或日期范圍,但不支持時間選擇。在本文中,我將創(chuàng)建一個使用DateTimePicker控件的實例。實例在常用控件(Common Controls)下的工具箱(Toolbox)中找到DateTimePicker控件,并把它添加到Windows Forms中。設(shè)置以下屬性:l Name:dtpDateSelectionl CustomFormat:mm/dd/yyyyl Format:短l MaxDate:12/首陸31/2008l MinDate:01/01/2007l ShowUpDown:假 在Form Load事件中添加以下代碼: dtpDateSelection.Value = Now 創(chuàng)建以下事件: Private Sub dtpDateSelection_CloseUp(ByVal sender As Object, ByVal e As System.EventArgs) Handles dtpDateSelection.CloseUp MessageBox.Show(dtpDateSelection.Value) End Sub 結(jié)果在第一個例子中,ShowUpDown屬性設(shè)為假,表示在用戶點擊控件凳悄時,控件的日歷部分可見。然后用戶從控件的日歷部分選擇日期。在DateTimePicker控件中選擇一個日期后,你的屏幕看起來與圖A類似。 現(xiàn)在,將ShowUpDown屬性值改為真,再次運行代碼。這次你不會看到控件的日歷部分,你可以點擊控件的上/下箭頭來選擇一個日期。其結(jié)棗芹渣果類似于圖B。 注意,這個控件不允許你選擇小于MinDate屬性值或大于MaxDate屬性值的日期。 更多信息你還可以使用許多其它屬性和重要的方法,讓DateTimePicker控件滿足你的需求。MSDN提供關(guān)于如何使用DateTimePicker控件的其它細(xì)節(jié)。 Irina Medvinskaya自1996年開始涉足技術(shù)領(lǐng)域。她獲得佩斯大學(xué)的MBA學(xué)位,現(xiàn)在任花旗集團的項目經(jīng)理。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供宿遷網(wǎng)站建設(shè)、宿遷做網(wǎng)站、宿遷網(wǎng)站設(shè)計、宿遷網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、宿遷企業(yè)網(wǎng)站模板建站服務(wù),10多年宿遷做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
;?? Visual Studio NET提供的MonthCalendar控件允許你選擇日期和一組日期 這個控件允許用戶方便地選擇日期 它類似于讓你選擇一個特定日期的DataTimePicker控件 不過MonthCalendar控件還可以幫助你選擇一個時間
使用MonthCalendar 控件
下面的例子說明如何使用MonthCalendar控彎州神件
在常用控件(Common Controls)下的工具箱(Toolbox)中找到MonthCalendar控件并將它添加到窗口表單(Window Form)中 設(shè)置以下跡判屬性
·Name mcDateSelection
·TodayDate 空
·MaxSelectionCount
·Selection Range Start 空
·Selection Range End 空
在Form Load事件中添加以下代碼
mcDateSelection TodayDate = Now
然后建立列表A中的事件 在這個例子中 我設(shè)置MaxSelectionCount屬性為 這意味著你只能在MonthCalendar控件中選擇一個 而不是一組日期 在MonthView控件中選擇一個日期 屏幕即類似于圖A
圖A
列表A Private Sub mcDateSelection_DateSelected(ByVal sender As Object ByVal e As System Windows Forms DateRangeEventArgs) Handles mcDateSelection DateSelected??????? MessageBox Show( Calendar Today s Date: mcDateSelection TodayDate vbCrLf _??????????????? Calendar Selected Start Date: mcDateSelection SelectionStart() vbCrLf _??????????????? Calendar Selected End Date: mcDateSelection SelectionEnd())??? End Sub???? 既然你只能選擇一個月中的某個特定的日期 而不是一組日期 那么 Selected Start Date和Selected End Date的值相同
現(xiàn)在 將MaxSelectionCount屬性設(shè)為 然后重新運行代碼 這次 你就可以選擇一組日期(在這個例子中最多為 天) 而且 一旦你選擇一組日期后 你將看到如圖B所示的結(jié)果
圖B
控件埋虧的其它用法
你可以利用MonthCalendar控件的許多其它屬性和方法 使其滿足你的需要 MSDN提供使用MonthCalendar控件的更多細(xì)節(jié)
lishixinzhi/Article/program/net/201311/11787
根據(jù)神鋒經(jīng)驗, 這個算法非常復(fù)雜. 經(jīng)過查找,終于得到一些資料, 在此愿與大家分享。 首先陰歷以月為基本單位,一個月以新月出現(xiàn)的那一天為始直至下一個新月出現(xiàn)的前一天。 由于月亮公轉(zhuǎn)的周期介于29到30天之間,陰歷的一個月也就由新月出現(xiàn)時刻的早晚或是29天或是30天。 大月為30天,小月為29天。 與陽歷不同的是,大小月在不同的年中不固定。 如春節(jié)的前一天常稱為大年三十,但有不少年如2000年的陰歷十二月只有29天。 由于十二個月的時間較陽歷年即地球繞太陽公轉(zhuǎn)一周的時間短11天左右. 為了使陰歷年與陽歷年保持相對穩(wěn)定,每隔兩三年就需要加入一個閏月。 大約每十九年要加入七個閏月。 而二十四節(jié)氣則是由地球在繞太陽公轉(zhuǎn)的軌道上的位置確定的。 以每年的冬至為始,每15度為一個節(jié)氣。 是故二十四節(jié)氣在陽歷的每月中有大概固定的日期。 古時以二十四節(jié)氣指導(dǎo)農(nóng)耕,這就是陰歷又稱農(nóng)歷的原因。 其中陽歷下半月的十二個節(jié)氣又稱為中氣。 中氣出現(xiàn)的時刻和閏月的確定有直接的關(guān)系。 陰歷的計算有下列四條規(guī)則: 1.所有新月和節(jié)氣出現(xiàn)的時刻的計算以東經(jīng)120度即東八區(qū)標(biāo)準(zhǔn)時為準(zhǔn)。 但計算1929年以前的陰歷時應(yīng)以北京即東經(jīng)116度25分的當(dāng)?shù)貢r為準(zhǔn)。 2.新月出現(xiàn)的一天為一個月的第一天。 如某個節(jié)氣的出現(xiàn)時刻也在這一天,則不論該節(jié)氣的出現(xiàn)時刻是否比新月晚,一律算落入新的一個月中。 3.每年的冬至總是落在這年的十一月中。 從一年的冬至的第二天起到下一年冬至這一天止的這段時游銀晌間稱為一歲。 如一歲中有十三個新月出現(xiàn),則這一歲為閏歲,要加入一個閏月。 4.閏歲中第一個沒有中氣的月為閏月。 因為一歲中只有十二個中氣,所以閏歲中至少有一個月沒有中氣,也存在有兩個月沒有中氣的可能性。 但這種情況下只有第一個沒有中氣的月為閏月。 閏月的前一個月為幾月則該閏月稱搏吵為閏幾月。 根據(jù)以上信息, 我們知道農(nóng)歷是根據(jù)天文觀測進(jìn)行指定的(也許可以在天文學(xué)的書上找到說明)。 為了簡化轉(zhuǎn)換計算, 很多程序人員設(shè)計了基于"時間段內(nèi)查表"方法的例程. 更具體的說明和源碼請參考下面這些資料: