Декларативный синтаксис серверного веб-элемента управления Calendar
Обновлен: Ноябрь 2007
Отображает календарь на один месяц, в котором пользователь может выбирать даты и переходить к следующему или предыдущему месяцу.
<asp:Calendar
AccessKey="string"
BackColor="color name|#dddddd"
BorderColor="color name|#dddddd"
BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
Inset|Outset"
BorderWidth="size"
Caption="string"
CaptionAlign="NotSet|Top|Bottom|Left|Right"
CellPadding="integer"
CellSpacing="integer"
CssClass="string"
DayNameFormat="Full|Short|FirstLetter|FirstTwoLetters|Shortest"
Enabled="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
FirstDayOfWeek="Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|
Saturday|Default"
Font-Bold="True|False"
Font-Italic="True|False"
Font-Names="string"
Font-Overline="True|False"
Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
Font-Strikeout="True|False"
Font-Underline="True|False"
ForeColor="color name|#dddddd"
Height="size"
ID="string"
NextMonthText="string"
NextPrevFormat="CustomText|ShortMonth|FullMonth"
OnDataBinding="DataBinding event handler"
OnDayRender="DayRender event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnSelectionChanged="SelectionChanged event handler"
OnUnload="Unload event handler"
OnVisibleMonthChanged="VisibleMonthChanged event handler"
PrevMonthText="string"
runat="server"
SelectedDate="string"
SelectionMode="None|Day|DayWeek|DayWeekMonth"
SelectMonthText="string"
SelectWeekText="string"
ShowDayHeader="True|False"
ShowGridLines="True|False"
ShowNextPrevMonth="True|False"
ShowTitle="True|False"
SkinID="string"
Style="string"
TabIndex="integer"
TitleFormat="Month|MonthYear"
ToolTip="string"
UseAccessibleHeader="True|False"
Visible="True|False"
VisibleDate="string"
Width="size"
>
<DayHeaderStyle/>
<DayStyle/>
<NextPrevStyle/>
<OtherMonthDayStyle/>
<SelectedDayStyle/>
<SelectorStyle/>
<TitleStyle/>
<TodayDayStyle/>
<WeekendDayStyle/>
</asp:Calendar>
Заметки
Элемент управленияCalendar используется для отображения календаря на один месяц, в котором пользователь может выбирать даты и переходить к следующему или предыдущему месяцу.
С помощью свойства SelectionMode можно предоставить пользователю возможность выбирать отдельный день, неделю или месяц или полностью отключить выбор даты.
Установив свойства стилей для различных частей элемента управления, можно настроить внешний вид элемента управления Calendar В следующей таблице представлен перечень свойств стиля для элемента управления Calendar.
Объект стиля |
Описание |
Класс стиля |
---|---|---|
Стиль раздела календаря, в котором отображаются названия дней недели. |
||
Стиль отображения отдельных дней отображаемого месяца.
Примечание.
Для выходных дней, текущей даты и выбранного дня можно использовать различные стили, установив свойства WeekendDayStyle, TodayDayStyle и SelectedDayStyle
|
||
Стиль для разделов справа и слева от строки заголовка, в которых расположены элементы управления LinkButton для перехода по месяцам. |
||
Стиль дат предыдущего или следующего месяцев, отображаемых в представлении текущего месяца. |
||
Стиль выбранной даты.
Примечание.
Если данное свойство не установлено, для отображения выбранной даты используется стиль, заданный свойством DayStyle.
|
||
Стиль левого столбца элемента управления Calendar, содержащего ссылки для выбора недели или целого месяца. |
||
Стиль строки заголовка, расположенной в верхней части календаря и содержащей название месяца и ссылки для перехода по месяцам.
Примечание.
Если свойство NextPrevStyle установлено, оно переопределяет стиль элементов управления для перехода к следующему и предыдущему месяцу, расположенных по краям строки заголовка.
|
||
Стиль текущей даты.
Примечание.
Если данное свойство не установлено, для отображения текущей даты используется стиль, заданный свойством DayStyle.
|
||
Стиль выходных дней.
Примечание.
Если данное свойство не установлено, для отображения выходных дней используется стиль, заданный свойством DayStyle.
|
Управлять внешним видом элемента управления Calendar можно также с помощью скрытия или отображения отдельных его частей. В следующей таблице приводится список частей элемента управления Calendar, которые можно отобразить или скрыть.
Свойство |
Описание |
---|---|
Скрывает или отображает раздел, в котором отображены дни недели. |
|
Скрывает или отображает линии сетки между днями месяца. |
|
Скрывает или отображает элементы управления для перехода к следующему или предыдущему месяцу. |
|
Скрывает или отображает раздел заголовка. |
Хотя привязка к источнику данных не поддерживается для элемента управления Calendar, можно изменить содержимое и форматирование ячеек отдельных дат. Перед тем как элемент управления Calendar отображается на веб-странице, он создает и собирает составляющие его компоненты. Событие DayRender возникает при создании каждой ячейки даты в элементе управления Calendar. Можно управлять содержимым и форматированием ячеек даты по мере их создания, предоставляя обработчику событий код для события DayRender.
Примечание. В элементе управления Calendar выполняются сценарии JavaScript для клиентского обозревателя. Для корректной работы данного элемента управления необходимо, чтобы клиентский обозреватель разрешал выполнение JavaScript. Дополнительные сведения о клиентском сценарии см. в разделе Клиентский сценарий на веб-страницах ASP.NET.
Сведения о свойствах, поддерживаемых для конкретных классов стилей, см. в разделе Свойства объектов стилей.
Подробные сведения о свойствах и событиях элемента управления Calendar см. в документации класса Calendar.
Пример
В следующем примере показан пример объявления элемента управления Calendar в ASPX-файле. Объявление содержит ряд свойств объектов стилей и устанавливает метод Date_Selected в качестве обработчика события SelectionChanged.
<asp:Calendar id="Calendar2"
OnSelectionChanged="Date_Selected"
SelectionMode="DayWeekMonth"
Font-Name="Verdana"
Font-Size="12px"
NextPrevFormat="ShortMonth"
SelectWeekText="week"
SelectMonthText="month"
runat="server">
<TodayDayStyle Font-Bold="True"/>
<DayHeaderStyle Font-Bold="True"/>
<OtherMonthDayStyle ForeColor="gray"/>
<TitleStyle BackColor="#3366ff"
ForeColor="white"
Font-Bold="True"/>
<SelectedDayStyle BackColor="#ffcc66"
Font-Bold="True"/>
<NextPrevStyle ForeColor="white"
Font-Size="10px"/>
<SelectorStyle BackColor="#99ccff"
ForeColor="navy"
Font-Size="9px"/>
</asp:Calendar>
В следующем примере показан метод обработки события SelectionChanged элемента управления Calendar. Запрос параметра SelectedDates элемента управления Calendar дает возможность определить количество выбранных дней и, следовательно, определить, какой временной промежуток был выбран: день, неделя или месяц. Сведения о выборе отображаются в серверном веб-элементе управления Label.
Sub Date_Selected(sender as Object sender, e As EventArgs)
Select (Calendar1.SelectedDates.Count)
Case 0: 'None
Label1.Text = "No dates are currently selected"
Case 1: 'Day
Label1.Text = "The selected date is " & _
Calendar1.SelectedDate.ToShortDateString
Case 7: 'Week
Label1.Text = "The selection is a week beginning " & _
Calendar1.SelectedDate.ToShortDateString
Case Else: 'Month
Label1.Text = "The selection is a month beginning " & _
Calendar1.SelectedDate.ToShortDateString
End Select
End Sub
protected void Date_Selected(object sender, EventArgs e)
{
switch (Calendar1.SelectedDates.Count)
{
case (0): //None
{
Label1.Text = "No dates are currently selected";
break;
}
case (1): //Day
{
Label1.Text = "The selected date is " +
Calendar1.SelectedDate.ToShortDateString();
break;
}
case (7): //Week
{
Label1.Text = "The selection is a week beginning " +
Calendar1.SelectedDate.ToShortDateString();
break;
}
default: //Month
Label1.Text = "The selection is a month beginning " +
Calendar1.SelectedDate.ToShortDateString();
break;
}
}
См. также
Основные понятия
Общие сведения о серверном веб-элементе управления Calendar
Серверные элементы управления ASP.NET