Calendar Web 伺服器控制項概觀

更新:2007 年 11 月

Calendar Web 伺服器控制項可用來顯示日曆中可選取的日期,以及與特定日期關聯的資料。

這個主題包含:

  • 案例

  • 功能

  • 背景

  • 程式碼範例

  • 類別參考

案例

您可以使用 Calendar Web 伺服器控制項執行下列事項:

  • 顯示及選取日期:使用者可透過控制項顯示的日曆移動至任何年份的任何一天。設定 SelectedDate 屬性則可讓特定日期在控制項中以反白顯示。此外,使用者也可以移動至任何日期,方式是按一下日期或是在月份之間移動。可將日曆設定為允許使用者選取多個日期,可以是整週或整個月份。

    顯示十月的 Calendar 控制項圖示

  • 在日曆方格中顯示約會或其他資訊Calendar 控制項能顯示個別日期的特定詳細資料,例如待辦清單、事件排程或類似的資訊。這個功能允許您顯示資料庫的日期資訊。

回到頁首

功能

您可以使用 Calendar 控制項執行下列動作:

  • 在使用者選取日期或日期範圍時擷取使用者互動。

  • 自訂日曆外觀。

  • 在日曆中顯示資料庫的資訊。

回到頁首

背景

Calendar 控制項會一次顯示一個月份的日期,而且一次顯示六週。下表描述控制項支援的數種日期類型。

日期類型

說明

TodaysDate

根據預設,這會設定為符合伺服器上的目前日期。但您可以調整它,讓日期能依不同地區設定 (Locale) 正確顯示。

VisibleDate

這個日期將決定月曆上所顯示的月份。使用者可在日曆上的月份之間移動,這樣可變更可見日期但不會影響今天的日期。若要在月份之間巡覽,您可以利用程式來設定可見日期。

SelectedDate, SelectedDates

這是使用者選擇的日期或日期範圍。在控制項中,使用者可選取一天、一週或單一月份,但只能選取連續的日期。您也可以透過程式設計方式設定選取的日期。在該情況下,您可以設定不連續的選取日期。

Calendar 控制項以 DateTime 物件為基礎,因此支援此物件允許的完整日期範圍。實際上,您可以顯示西元 0 年至 9999 年之間的任何日期。

在 ASP.NET 網頁上,Calendar 控制項會呈現為 HTML 表格。因此,某些控制項屬性 (Property) 會與表格格式的各個方面相關。有些較舊的瀏覽器並不完全支援其中幾個屬性。因此,在這些瀏覽器中無法使用所有的格式化功能。

啟用日期選取

依預設,日曆允許使用者按一下個別日期來加以選取。如果您將控制項當成唯讀月曆使用,就可以停用日期選取功能。

如果啟用日期選取,日曆中的每一天都會包含按一下滑鼠即引發事件的 LinkButton 控制項。如果您啟用週或月份選取,則日曆的一邊會加入一連結欄,讓使用者能夠指定要選取的週。

自訂日曆外觀

您可以設定日曆屬性來變更日曆的色彩、大小、文字及其他可見功能。下表顯示各種執行此步驟的方法。

自訂方法

描述

設定屬性

您可以設定屬性來顯示格線、變更顯示為每週第一天的日期及變更月份和日期名稱的外觀。

設定擴充樣式屬性

您可以使用衍生自 Style 物件的屬性來設定日曆中特定項目的外觀。這包含目前的日期或包含月份與巡覽連結的標題列。可使用階層式樣式表的瀏覽器支援這些樣式屬性。較舊的瀏覽器支援的外觀樣式較少。

自訂個別日期轉譯

在控制項轉譯個別日期時,會引發您可以處理的事件來修改轉譯中的資料流。這不僅適用於變更日期的外觀,同時也可包含每天的自訂內容。如需詳細資訊,請參閱 HOW TO:自訂 Calendar Web 伺服器控制項中的個別日期

利用 Calendar Web 伺服器控制項來補捉使用者互動

使用者選取個別日期或日期範圍時,Calendar 控制項會引發 SelectionChanged 事件。使用者顯示新月份時,它會引發 VisibleMonthChanged 事件。藉由建立這些事件的方法,您可以判斷使用者所選取的日期或日期範圍並適當地回應。回應可以用來自訂該日期的顯示。

在 Calendar 控制項中顯示資料庫的資訊

常見的案例是在日曆中顯示來自於資料庫的資訊。例如,事件日曆通常以儲存在資料庫中的資訊為基礎。

Calendar 控制項並不直接支援資料繫結,也就是說,您並不是將整個月曆繫結至資料來源。而是先為控制項的 DayRender 事件建立方法,並且在呈現目前月曆月份中的每一天時引發這個方法。在這個事件的處理常式中,您可以從資料來源抽出資訊,然後將其加入轉譯到瀏覽器的資料流。如需詳細資訊,請參閱 HOW TO:在 Calendar 控制項中顯示來自資料庫的選取日期

可及性

若要讓使用輔助裝置的使用者更容易存取 Calendar 控制項,這個控制項支援名為 UseAccessibleHeader 的屬性。當這個屬性設定為 true (這是預設值) 時,就會使用 HTML th 項目呈現包含日期名稱的欄位標題。

回到頁首

程式碼範例

回到頁首

類別參考

下表列出 Calendar 控制項的相關類別。

成員

描述

Calendar

控制項的主要類別。

CalendarDay

表示 Calendar 控制項中之日期的類別。

CalendarSelectionMode

表示 Calendar 控制項中可用之日期選取模式的列舉型別 (Enumeration)。

回到頁首

請參閱

工作

HOW TO:以程式設計方式選取 Calendar Web 伺服器控制項中的日期

HOW TO:在 Calendar 控制項中顯示來自資料庫的選取日期

其他資源

使用 ASP.NET Web 伺服器控制項