Event Calendar [ ASP.NET 2.0 / C# ]
2007-01-04 15:26
323 查看
http://www.codeproject.com/useritems/EventCalendar.asp
CalendarDefault.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CalendarDefault.aspx.cs" Inherits="CalendarDefault" %>
<%@ Register TagPrefix="ECalendar" Namespace="ExtendedControls" Assembly="EventCalendar" %>
<!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>Event Calendar [ ASP.NET 2.0 / C# ]</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="gvSelectedDateEvents" runat="server" Width="100%">
</asp:GridView>
<ECalendar:EventCalendar ID="Calendar1" runat="server" BackColor="White" BorderColor="Silver"
BorderWidth="1px" Font-Names="Verdana"
Font-Size="9pt" ForeColor="Black" Height="500px"
Width="800px" FirstDayOfWeek="Monday" NextMonthText="Next >" PrevMonthText="< Prev" SelectionMode="DayWeekMonth" ShowGridLines="True" NextPrevFormat="ShortMonth"
ShowDescriptionAsToolTip="True" BorderStyle="Solid" EventDateColumnName="" EventDescriptionColumnName="" EventHeaderColumnName="" OnSelectionChanged="Calendar1_SelectionChanged">
<SelectedDayStyle BackColor="#333399" ForeColor="White" />
<TodayDayStyle BackColor="#CCCCCC" />
<SelectorStyle BorderColor="#404040" BorderStyle="Solid" />
<DayStyle HorizontalAlign="Left" VerticalAlign="Top" Wrap="True" />
<OtherMonthDayStyle ForeColor="#999999" />
<NextPrevStyle Font-Size="8pt" ForeColor="#333333" Font-Bold="True" VerticalAlign="Bottom" />
<DayHeaderStyle BorderWidth="1px" Font-Bold="True" Font-Size="8pt" />
<TitleStyle BackColor="White" BorderColor="Black" BorderWidth="4px" Font-Bold="True"
Font-Size="12pt" ForeColor="#333399" HorizontalAlign="Center" VerticalAlign="Middle" />
</ECalendar:EventCalendar>
</div>
</form>
</body>
</html>
CalendarDefault.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class CalendarDefault : System.Web.UI.Page
{
private DataTable GetEvents()
{
DataTable dt = new DataTable();
dt.Columns.Add("EventDate", Type.GetType("System.DateTime"));
dt.Columns.Add("EventHeader", Type.GetType("System.String"));
dt.Columns.Add("EventDescription", Type.GetType("System.String"));
DataRow dr;
// Last Week's Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now.AddDays(-7);
dr["EventHeader"] = "My Last Week's Event 1";
dr["EventDescription"] = "My Last Week's Event 1 Description";
dt.Rows.Add(dr);
// Yesterday's Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now.AddDays(-1);
dr["EventHeader"] = "My Yesterday's Event 1";
dr["EventDescription"] = "My Yesterday's Event 1 Description";
dt.Rows.Add(dr);
// Todays Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now;
dr["EventHeader"] = "My Todays Event 1";
dr["EventDescription"] = "My Todays Event 1 Description";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now;
dr["EventHeader"] = "My Todays Event 2";
dr["EventDescription"] = "My Todays Event 2 Description";
dt.Rows.Add(dr);
// Tomorrow's Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now.AddDays(1);
dr["EventHeader"] = "My Tomorrow's Event 1";
dr["EventDescription"] = "My Tomorrow's Event 1 Description";
dt.Rows.Add(dr);
return dt;
}
protected void Page_Load(object sender, EventArgs e)
{
Calendar1.EventDateColumnName = "EventDate";
Calendar1.EventDescriptionColumnName = "EventDescription";
Calendar1.EventHeaderColumnName = "EventHeader";
Calendar1.EventSource = GetEvents();
}
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
SelectedDatesCollection theDates = Calendar1.SelectedDates;
DataTable dtEvents = Calendar1.EventSource;
DataTable dtSelectedDateEvents = dtEvents.Clone();
DataRow dr;
foreach (DataRow drEvent in dtEvents.Rows)
foreach (DateTime selectedDate in theDates)
if ((Convert.ToDateTime(drEvent[Calendar1.EventDateColumnName])).ToShortDateString() == selectedDate.ToShortDateString())
{
dr = dtSelectedDateEvents.NewRow();
dr[Calendar1.EventDateColumnName] = drEvent[Calendar1.EventDateColumnName];
dr[Calendar1.EventHeaderColumnName] = drEvent[Calendar1.EventHeaderColumnName];
dr[Calendar1.EventDescriptionColumnName] = drEvent[Calendar1.EventDescriptionColumnName];
dtSelectedDateEvents.Rows.Add(dr);
}
gvSelectedDateEvents.DataSource = dtSelectedDateEvents;
gvSelectedDateEvents.DataBind();
}
}
CalendarDefault.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CalendarDefault.aspx.cs" Inherits="CalendarDefault" %>
<%@ Register TagPrefix="ECalendar" Namespace="ExtendedControls" Assembly="EventCalendar" %>
<!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>Event Calendar [ ASP.NET 2.0 / C# ]</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="gvSelectedDateEvents" runat="server" Width="100%">
</asp:GridView>
<ECalendar:EventCalendar ID="Calendar1" runat="server" BackColor="White" BorderColor="Silver"
BorderWidth="1px" Font-Names="Verdana"
Font-Size="9pt" ForeColor="Black" Height="500px"
Width="800px" FirstDayOfWeek="Monday" NextMonthText="Next >" PrevMonthText="< Prev" SelectionMode="DayWeekMonth" ShowGridLines="True" NextPrevFormat="ShortMonth"
ShowDescriptionAsToolTip="True" BorderStyle="Solid" EventDateColumnName="" EventDescriptionColumnName="" EventHeaderColumnName="" OnSelectionChanged="Calendar1_SelectionChanged">
<SelectedDayStyle BackColor="#333399" ForeColor="White" />
<TodayDayStyle BackColor="#CCCCCC" />
<SelectorStyle BorderColor="#404040" BorderStyle="Solid" />
<DayStyle HorizontalAlign="Left" VerticalAlign="Top" Wrap="True" />
<OtherMonthDayStyle ForeColor="#999999" />
<NextPrevStyle Font-Size="8pt" ForeColor="#333333" Font-Bold="True" VerticalAlign="Bottom" />
<DayHeaderStyle BorderWidth="1px" Font-Bold="True" Font-Size="8pt" />
<TitleStyle BackColor="White" BorderColor="Black" BorderWidth="4px" Font-Bold="True"
Font-Size="12pt" ForeColor="#333399" HorizontalAlign="Center" VerticalAlign="Middle" />
</ECalendar:EventCalendar>
</div>
</form>
</body>
</html>
CalendarDefault.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class CalendarDefault : System.Web.UI.Page
{
private DataTable GetEvents()
{
DataTable dt = new DataTable();
dt.Columns.Add("EventDate", Type.GetType("System.DateTime"));
dt.Columns.Add("EventHeader", Type.GetType("System.String"));
dt.Columns.Add("EventDescription", Type.GetType("System.String"));
DataRow dr;
// Last Week's Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now.AddDays(-7);
dr["EventHeader"] = "My Last Week's Event 1";
dr["EventDescription"] = "My Last Week's Event 1 Description";
dt.Rows.Add(dr);
// Yesterday's Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now.AddDays(-1);
dr["EventHeader"] = "My Yesterday's Event 1";
dr["EventDescription"] = "My Yesterday's Event 1 Description";
dt.Rows.Add(dr);
// Todays Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now;
dr["EventHeader"] = "My Todays Event 1";
dr["EventDescription"] = "My Todays Event 1 Description";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now;
dr["EventHeader"] = "My Todays Event 2";
dr["EventDescription"] = "My Todays Event 2 Description";
dt.Rows.Add(dr);
// Tomorrow's Events
dr = dt.NewRow();
dr["EventDate"] = DateTime.Now.AddDays(1);
dr["EventHeader"] = "My Tomorrow's Event 1";
dr["EventDescription"] = "My Tomorrow's Event 1 Description";
dt.Rows.Add(dr);
return dt;
}
protected void Page_Load(object sender, EventArgs e)
{
Calendar1.EventDateColumnName = "EventDate";
Calendar1.EventDescriptionColumnName = "EventDescription";
Calendar1.EventHeaderColumnName = "EventHeader";
Calendar1.EventSource = GetEvents();
}
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
SelectedDatesCollection theDates = Calendar1.SelectedDates;
DataTable dtEvents = Calendar1.EventSource;
DataTable dtSelectedDateEvents = dtEvents.Clone();
DataRow dr;
foreach (DataRow drEvent in dtEvents.Rows)
foreach (DateTime selectedDate in theDates)
if ((Convert.ToDateTime(drEvent[Calendar1.EventDateColumnName])).ToShortDateString() == selectedDate.ToShortDateString())
{
dr = dtSelectedDateEvents.NewRow();
dr[Calendar1.EventDateColumnName] = drEvent[Calendar1.EventDateColumnName];
dr[Calendar1.EventHeaderColumnName] = drEvent[Calendar1.EventHeaderColumnName];
dr[Calendar1.EventDescriptionColumnName] = drEvent[Calendar1.EventDescriptionColumnName];
dtSelectedDateEvents.Rows.Add(dr);
}
gvSelectedDateEvents.DataSource = dtSelectedDateEvents;
gvSelectedDateEvents.DataBind();
}
}
相关文章推荐
- 温故知新ASP.NET 2.0(C#)(1) - MasterPage(母版页)
- 温故知新ASP.NET 2.0(C#)(6) - Membership&RoleManager(成员资格和角色管理)
- 基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速开发框架设计NBear V3.3.9 Stable [开源]
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- ASP.Net C#2.0全能数据库组件 (开源含实例源码)|
- 利用C#创建 IIS 站点并设置.NET Framework版本为ASP.NET 2.0 的方法(一)
- 使用ASP.NET 2.0提供的WebResource管理内嵌资源(c#)
- 转载:Asp.net 2.0 C#实现压缩/解压功能 (示例代码下载)
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- C#下 ASP.NET 2.0中禁止GridView的内容自动换行 (测试有效!!)
- 温故知新ASP.NET 2.0(C#)(8) - DataSourceControl(数据源控件)
- 【C#.NET】保护你的ASP.NET应用程序(二)ASP.NET 2.0的成员资格和角色管理器
- ADO.NET .net core2.0添加json文件并转化成类注入控制器使用 简单了解 iTextSharp实现HTML to PDF ASP.NET MVC 中 Autofac依赖注入DI 控制反转IOC 了解一下 C# AutoMapper 了解一下
- ASP.Net C#2.0全能数据库组件 (含下载实例源码地址)
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- 利用C#创建 IIS 站点并设置.NET Framework版本为ASP.NET 2.0 的方法(转)
- 本周ASP.NET英文技术文章推荐[03/23 - 04/05]:C#、Visual Studio、MVC、死锁、Web 2.0 API、jQuery、IIS7、FileUpload
- ASP.NET 2.0网站专案同时使C#与VB.NET之技巧(新书连载)
- c# asp.net 2.0 半角专全角,全角专半角
- GridView C#2.0(asp.net)