控制Calendar的外观
Controlling the Calendar’s Appearance
许多TableItemStyle类型的属性用于控制日历每个部分的样式。表5-16中列出了这些TableItemStyle类型的属性,这将在下一个示例Calendar-Styles中说明。最后的窗体如图5-16所示。
表5-16 Calendar中TableItemStyle类型的属性
|
名 称 |
所设置样式的对象 |
|
DayHeaderStyle |
一周中某天 |
|
DayStyle |
日期 |
|
NextPrevStyle |
月份导航控件 |
|
OtherMonthDayStyle |
不在当前显示月份中的日期 |
|
SelectedDayStyle |
选中日期 |
|
SelectorStyle |
周和月选择器列 |
|
TitleStyle |
标题栏 |
|
TodayDayStyle |
今天的日期 |
|
WeekendDayStyle |
周末日期 |
Calendar控件中TableItemStyle类型的属性在VS2005中的工作方式与前面介绍的Wizard 控件相同。在设计视图中,这些属性如图5-8所示,在源视图中这些属性如图5-9

图5-16:Calendar-Styles
所示。声明的格式也和前面描述的Wizard控件相同。
除TableItemStyle类型的属性,还有几个可读写的Boolean类型属性,它们也用于控制日历的外观,如表5-17所示。
表5-17 Boolean 类型的属性控制日历外观的不同部分
|
属 性 |
默认值 |
控制其可见性的对象 |
|
ShowDayHeader |
true |
一周中每一天的名称 |
|
ShowGridLines |
false |
月份中日期的网格线 |
|
ShowNextPrevMonth |
true |
月份导航控件 |
|
ShowTitle |
true |
标题栏 |
可以在设计视图中,单击Calendar控件的智能标记并选择自动套用格式,但在这个示例中,将设置自己的样式。这是通过在设计视图或源视图中,选中Calendar控件的属性窗口中设置。
如果需要了解如何使用这些属性,可将前一个示例Calendar-SelectionMode复制到新网站Calendar-Styles,并打开新网站。该示例最后的内容文件在示例5-17中列出,Calendar声明高亮显示,最后的页面如图5-16所示。查看示例5-17中的声明,可以看到该示例设
置了哪些样式。
示例5-17:Calendar-Styles的Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Calendar</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>Calendar Control</h1>
<h2>Styles</h2>
<asp:Calendar ID="Calendar1" runat="server"
SelectionMode="DayWeekMonth"
CellPadding="7"
CellSpacing="5"
DayNameFormat="FirstTwoLetters"
FirstDayOfWeek="Monday"
NextMonthText="Next >"
PrevMonthText="< Prev"
ShowGridLines="True"
DayStyle-BackColor="White"
DayStyle-ForeColor="Black"
DayStyle-Font-Names="Arial">
<DayHeaderStyle
BackColor="Black"
Font-Names="Arial Black"
ForeColor="White" />
<SelectedDayStyle
BackColor="Cornsilk"
Font-Bold="True"
Font-Italic="True"
Font-Names="Arial"
ForeColor="Blue" />
<SelectorStyle
BackColor="Cornsilk"
Font-Names="Arial"
ForeColor="Red" />
<WeekendDayStyle
BackColor="LavenderBlush"
Font-Names="Arial"
ForeColor="Purple" />
<OtherMonthDayStyle
BackColor="LightGray"
Font-Names="Arial"
ForeColor="White" />
<TodayDayStyle
BackColor="Cornsilk"
Font-Bold="True"
Font-Names="Arial"
ForeColor="Green" />
<NextPrevStyle
BackColor="DarkGray"
Font-Names="Arial"
ForeColor="Yellow" />
<TitleStyle
BackColor="Gray"
Font-Names="Arial Black"
ForeColor="White"
HorizontalAlign="Left" />
</asp:Calendar>
</div>
</form>
</body>
</html>







