VS2.0控件之日历《Calendar》C#


下面是今天用C#做的例题

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.aspx.cs"Inherits="_Default"%>

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title>无标题页</title>
</head>
<body>
<formid="form1"runat="server">
<div>
控制日历的选择模式:
<br/>
<asp:DropDownListID="DropDownList1"runat="server"AutoPostBack="True"OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItemValue="None">无选择</asp:ListItem>
<asp:ListItemValue="Day"></asp:ListItem>
<asp:ListItemValue="DayWeek">天、周</asp:ListItem>
<asp:ListItemValue="DayWeekMonth">天、周、月</asp:ListItem>
</asp:DropDownList>
<asp:CalendarID="Calendar1"runat="server"BackColor="#FFFFCC"BorderColor="#FFCC66"
BorderWidth
="1px"DayNameFormat="Shortest"Font-Names="Verdana"Font-Size="8pt"
ForeColor
="#663399"Height="200px"NextMonthText="下月"NextPrevFormat="ShortMonth"
OnSelectionChanged
="Calendar1_SelectionChanged"PrevMonthText="上月"SelectMonthText="选全月"
SelectWeekText
="选全周"ShowGridLines="True"Width="328px"DayHeaderStyle-Font-Italic="true"OnDayRender="Calendar1_DayRender"OnVisibleMonthChanged="Calendar1_VisibleMonthChanged">
<SelectedDayStyleBackColor="#CCCCFF"BorderStyle="Double"Font-Bold="True"/>
<TodayDayStyleBackColor="#FFCC66"ForeColor="White"/>
<SelectorStyleBackColor="#FFCC66"/>
<OtherMonthDayStyleForeColor="#CC9966"/>
<NextPrevStyleFont-Size="9pt"ForeColor="#FFFFCC"/>
<DayHeaderStyleBackColor="#FFCC66"Font-Bold="True"Height="1px"Font-Italic="True"/>
<TitleStyleBackColor="#990000"Font-Bold="True"Font-Size="9pt"ForeColor="#FFFFCC"/>
<WeekendDayStyleBackColor="LightSalmon"/>
</asp:Calendar>
<br/>
<br/>
<asp:LabelID="Label1"runat="server"></asp:Label><br/>
选择的月是:
<asp:LabelID="Label2"runat="server"></asp:Label><br/>
选择的年是:
<asp:LabelID="Label4"runat="server"></asp:Label><br/>
<br/>
显示输入的时间
<asp:DropDownListID="ye"runat="server">
</asp:DropDownList><asp:DropDownListID="mo"runat="server">
</asp:DropDownList><asp:DropDownListID="da"runat="server">
</asp:DropDownList>
<asp:ButtonID="Button1"runat="server"OnClick="Button1_Click"Text="切"Width="85px"/><br/>
<br/>

</div>
</form>
</body>
</html>


usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;

publicpartialclass_Default:System.Web.UI.Page
{
string[][]arr;//声明一个数组来存储一年中的节日
protectedvoidPage_Load(objectsender,EventArgse)
{
arr
=newstring[13][];//数组
for(inti=0;i<13;i++)
{
arr[i]
=newstring[32];
}

//下面是储存在数组中的节日
arr[1][1]="圆蛋节";
arr[
2][15]="没啥节样";
arr[
3][8]="妇女节";
arr[
4][15]="没啥节样";
arr[
5][1]="大假哦";
arr[
6][1]="娃娃节";
arr[
7][1]="jiandang节";
arr[
7][15]="洪川医药正式启用";
arr[
8][1]="兵仔儿节";
arr[
9][10]="孔子节";
arr[
9][28]="热烈庆祝,今天是川哥的生日哈!";
arr[
10][1]="大假哦";
arr[
11][15]="没啥节样";
arr[
12][25]="鬼节";
//填充年月日下拉菜单
for(inty=1980;y<2050;y++)
{//填充年下拉列表
ye.Items.Add(y.ToString());
}

for(intm=1;m<13;m++)
{//填充月下拉列表
mo.Items.Add(m.ToString());
}

for(intd=1;d<32;d++)
{//填充日下拉列表
da.Items.Add(d.ToString());
}


}

protectedvoidDropDownList1_SelectedIndexChanged(objectsender,EventArgse)
{
switch(DropDownList1.SelectedValue)//循环判断
{
case"None"://注意是冒号
Calendar1.SelectionMode=CalendarSelectionMode.None;//设置选择方式为没有
break;//跳出循环
case"DayWeekMonth":
Calendar1.SelectionMode
=CalendarSelectionMode.DayWeekMonth;
break;
case"DayWeek":
Calendar1.SelectionMode
=CalendarSelectionMode.DayWeek;
break;
case"Day":
Calendar1.SelectionMode
=CalendarSelectionMode.Day;
break;
}

}

protectedvoidCalendar1_SelectionChanged(objectsender,EventArgse)
{//当选择一个日期时激发
Label1.Text="完整日期是:"+Calendar1.SelectedDate.ToShortDateString();
Label2.Text
=Calendar1.SelectedDate.Month.ToString()+"";
Label4.Text
=Calendar1.SelectedDate.Year.ToString()+"";
}

protectedvoidCalendar1_VisibleMonthChanged(objectsender,MonthChangedEventArgse)
{//当切换到其他月的时候激发
Label1.Text="你真的要换到下个月??";
}

protectedvoidButton1_Click(objectsender,EventArgse)
{//指定日期事件
stringy=ye.SelectedValue.ToString();//得到年的值
stringm=mo.SelectedValue.ToString();//得到月的值
stringd=da.SelectedValue.ToString();//得到日的值
Calendar1.VisibleDate=Convert.ToDateTime(y+"-"+m+"-"+d);//指定被选中的日期
}

protectedvoidCalendar1_DayRender(objectsender,DayRenderEventArgse)//注意这个事件名称是DayRender
{
CalendarDayd
=e.Day;//设置当前日期
TableCellc=e.Cell;//设置当前表格
if(d.IsOtherMonth)
{//如果是其他月份的话就清除本来的节日
c.Controls.Clear();
}

else
{
try
{
stringtxt=arr[d.Date.Month][d.Date.Day];//得到完整的当前[月][日]
if(txt!=string.Empty)//看下里面是否有东西
{
c.Controls.Add(
newLiteralControl("<br>"+txt));//如果有的话,就在日期数字后面换行显示出来
}

}

catch(Exceptionexe)
{
Response.Write(exe.ToString());
}

}

}

}
优质内容筛选与推荐>>
1、别被数据分析师骗了!用数据说谎的三种办法
2、为什么程序员总是发现不了自己的Bug?程序员:我不认识他啊
3、android插件开发机制
4、2018谷歌开发者大会原声中文字幕版视频
5、码云推荐|基于Hadoop的KafkaOnYarn


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn