ASP.NET Calendar日历(日期)控件使用方法

所属分类: 网络编程 / ASP.NET 阅读数: 1814
收藏 0 赞 0 分享

Calendar 控件显示一个日历,用户可通过该日历导航到任意一年的任意一天。当 ASP.NET 网页运行时,Calendar 控件以 HTML 表格的形式呈现。因此,该控件的许多属性与多种不同的表格格式相符。在这些属性中,有几个在一些低版本的浏览器中不能得到完全支持,因此在这些浏览器中并不能使用所有的格式功能。

使用 Calendar 控件在网页上显示日历的单个月。该控件使您可以选择日期并移到下个月或上个月。Calendar 控件支持 System.Globalization 命名空间中的所有 System.Globalization.Calendar 类型。除公历以外,这还包括使用不同年和月系统的日历,如 Hjiri 日历。

可以通过设置 SelectionMode 属性指定 Calendar 控件是否允许选择单日、周或整月。

默认情况下,该控件显示月中各天、周中各天的标头、带有月份名和年份的标题、用于选择月份中各天的链接及用于移动到下个月和上个月的链接。您可以通过设置控制控件中不同部分的样式的属性,来自定义 Calendar 控件的外观。下表列出了指定控件不同部分的样式的属性。

属性 说明

DayHeaderStyle 为显示一周中各天的部分指定样式。
DayStyle 为显示的月份中的日期指定样式。
NextPrevStyle 为标题部分中的导航控件指定样式。
OtherMonthDayStyle 为不在当前显示的月份中的日期指定样式。
SelectedDayStyle 为日历中的选定日期指定样式。
SelectorStyle 为周和月份日期选择列指定样式。
TitleStyle 为标题部分指定样式。
TodayDayStyle 为今天日期指定样式。
WeekendDayStyle 为周末日期指定样式。

也可以显示或隐藏控件的不同部分。下表列出控制显示或隐藏哪些部分的属性。

ShowDayHeader 显示或隐藏显示一周中各天的部分。
ShowGridLines 显示或隐藏月中各天之间的网格线。
ShowNextPrevMonth 显示或隐藏指向下个月或上个月的导航控件。
ShowTitle 显示或隐藏标题部分。

尽管 Calendar 控件不支持绑定到数据源,但是可以修改各个日期单元格的内容和格式设置。在网页上显示 Calendar 控件之前,它创建并汇编组成该控件的组件。当创建 Calendar 控件中的每个日期单元格时,均会引发 DayRender 事件。通过在 DayRender 事件的事件处理程序中提供代码,可以在创建日期单元格时控制其内容和格式设置。

Calendar 控件将 ECMAScript(JScript、JavaScript)呈现给客户端浏览器。客户端浏览器必须启用 ECMAScript,此控件才能正常工作。

下面的代码示例演示如何在网页上创建 Calendar 控件。

前台代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Calendar.aspx.cs" Inherits="WebControls_Calendar" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
 <title></title>
 <style type="text/css">
  .style1
  {
   width: 369px;
  }
 </style>
</head>
<body>
 <form id="form1" runat="server">
 <div>
 <h3>Calendar(日期控件)</h3>
  <table style="width: 100%;">
   <tr>
    <td class="style1">
     &nbsp;
     属性</td>
    <td>
     值</td>
    <td>
     作用</td>
   </tr>
  </table>
  <hr />
  请选择日期:<asp:Calendar ID="calDate" runat="server"></asp:Calendar>
  <asp:Button ID="btnSubmit" runat="server" Text="提交" onclick="btnSubmit_Click" />
  <hr />
  请选的日期为:<asp:Label ID="lblState" runat="server"></asp:Label>
  <br />
  <br />
  本地日期和时间为:<asp:Label ID="lblBenDiShiJian" runat="server"></asp:Label>
 </div>
 </form>
</body>
</html>

后台代码:

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class WebControls_Calendar : System.Web.UI.Page
{
 protected void Page_Load(object sender, EventArgs e)
 {
  lblBenDiShiJian.Text = System.DateTime.Now.ToString();
 }
 protected void btnSubmit_Click(object sender, EventArgs e)
 {
  lblState.Text = calDate.SelectedDate.ToShortDateString();
 }
}

显示效果:

Calendar日历控件

请选的日期为:2013-03-13

本地日期和时间为:2013-03-06 10:22:23

更多精彩内容其他人还在看

.NET Core源码解析配置文件及依赖注入

这篇文章我们设计了一些复杂的概念,因为要对ASP.NET Core的启动及运行原理、配置文件的加载过程进行分析,依赖注入,控制反转等概念的讲解等
收藏 0 赞 0 分享

.NET Corek中Git的常用命令及实战演练

这篇文章将通过故事的形式从Git的历史谈起,并讲述Git的强大之处。然后通过实战演练教你如何在Github以及码云上托管我们的代码并进行代码的版本控制
收藏 0 赞 0 分享

Asp.Net Core WebAPI使用Swagger时API隐藏和分组详解

这篇文章主要给大家介绍了关于Asp.Net Core WebAPI使用Swagger时API隐藏和分组的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Asp.Net Core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

如何利用FluentMigrator实现数据库迁移

这篇文章主要给大家介绍了关于如何利用FluentMigrator实现数据库迁移的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

ASP.NET Core利用Jaeger实现分布式追踪详解

这篇文章主要给大家介绍了关于ASP.NET Core利用Jaeger实现分布式追踪的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ASP.NET Core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

浅谈从ASP.NET Core2.2到3.0你可能会遇到这些问题

这篇文章主要介绍了ASP.NET Core2.2到3.0可能会遇到的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

详解.net core webapi 前后端开发分离后的配置和部署

这篇文章主要介绍了.net core webapi 前后端开发分离后的配置和部署,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

详解ASP.Net Core 中如何借助CSRedis实现一个安全高效的分布式锁

这篇文章主要介绍了ASP.Net Core 中如何借助CSRedis实现一个安全高效的分布式锁,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

.net 4.5部署到docker容器的完整步骤

这篇文章主要给大家介绍了关于.net 4.5部署到docker容器的完整步骤,文中通过示例代码介绍的非常详细,对大家学习或者使用.net4.5具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

.net core并发下线程安全问题详解

这篇文章主要给大家介绍了关于.net core并发下线程安全问题的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用.net core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享
查看更多