资源简介
一个简单的C#日历控件(源码)
作一个小项目,其中Appointment功能需要日历控件,但C#本身的日历控件不能满足需要,只好自己编写了一个。比较简单,但满足了功能要求。
1.只实现了一个事件:DateChanged取得所选取的日期
private void shyCalendar1_DateChanged(object sender, shyCtrl.shyCalendar.DateChangedEventArgs e)
{
label1.Text = e.GetDate.ToString();
}
2.可以取得当前所选择的日期:
label2.Text = shyCalendar1.CurrDate.ToString();
3.可以设置指定条件的日期的前景色和背景色
shyCalendar1.TermItes[i].ForeColor
.BackColor
.Desc(暂无用)
.Term(格式下面说明)
4.Term的格式
2011.10.20,2011.10.22, .... 指定日期
2011.10.26-2011.10.29, .... 指定日期范围,含-前后的日期
-2011.03.15, 指定日期范围,小于等于-后面的日期
2011.04.20-, 指定日期范围,大于等于-前面的日期
w0,w1,w2,w3,w4,w5,w6 w0表示周日,w1表示周一....
通过这个控件,我可以实现专家预约显示。在日历控件中,专家非工作日是什么颜色,有过预约的日期是什么颜色,预约满了的日期是什么颜色。
控件不能改变大小、字体。不过要做到这点也很容易。懒得做了,满足需要就行了。

代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
namespace shyCtrl
{
public partial class shyCalendar : UserControl
{
private string CurrYearMonth = ““;
private Listyle> CellstyleList = new Listyle>();
private List _TermItems = new List();
[TypeConverter(typeof(System.ComponentModel.CollectionConverter))]
[DesignerSerializationVisibility( DesignerSerializationVisibility.Content)]
public List TermItems
{
get { return _TermItems; }
}
public class TermList
{
public string Desc { get; set; }
public string Term { get; set; }
public Color BackColor { get; set; }
public Color ForeColor { get; set; }
}
#region DateChanged event
public class DateChangedEventArgs : EventArgs
{
private DateTime dt;
public DateChangedEventArgs(DateTime CurrDay)
{
dt = CurrDay;
}
public DateTime GetDate
{
get { return dt; }
}
}
public delegate void DateChangeEventHandler(object sender DateChangedEventArgs e);
public event DateChangeEventHandler DateChanged;
protected virtual void onDateChanged(DateChangedEventArgs e)
{
if (DateChanged != null)
{
DateChanged(this e);
}
}
public DateTime CurrDate
{
get { return this.dtYearMonth.Value; }
}
#endregion
public shyCalendar()
{
InitializeComponent();
}
private void shyCalendar_Load(object sender EventArgs e)
{
//set Cellstyle according TermItem property
CellstyleList.Clear();
for (int i = 0; i < this.TermItems.Count; i++)
{
CellstyleList.Add(new DataGridViewCellstyle());
CellstyleList[i].ForeColor = this.TermItems[i].ForeColor;
CellstyleList[i].BackColor = this.TermItems[i].BackColor;
}
lblToday.Text = “Today: “ + DateTime.Now.ToString(“dd/MM/yyyy“);
dtYearMonth.Value = DateTime.Now;
}
///
///
///
/// sDate format is yyyy.MM.dd
///
/// format of sTerm:
/// example1: 2011.10.202011.10.22 ....
/// 2011.10.26-2011.10.29 ....
/// -2011.03.15
/// 2011.04.20-
//
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 16384 2011-10-23 14:36 shyCtrl\shyCtrl\bin\Debug\shyCtrl.dll
文件 24064 2011-10-23 14:36 shyCtrl\shyCtrl\bin\Debug\shyCtrl.pdb
文件 8405 2011-10-21 23:37 shyCtrl\shyCtrl\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6097 2011-10-23 14:36 shyCtrl\shyCtrl\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 124 2011-10-21 23:41 shyCtrl\shyCtrl\obj\Debug\GenerateResource.read.1.tlog
文件 290 2011-10-21 23:41 shyCtrl\shyCtrl\obj\Debug\GenerateResource.write.1.tlog
文件 7319 2011-10-22 21:42 shyCtrl\shyCtrl\obj\Debug\ResolveAssemblyReference.cache
文件 592 2011-10-21 23:33 shyCtrl\shyCtrl\obj\Debug\shyCtrl.csproj.FileListAbsolute.txt
文件 16384 2011-10-23 14:36 shyCtrl\shyCtrl\obj\Debug\shyCtrl.dll
文件 24064 2011-10-23 14:36 shyCtrl\shyCtrl\obj\Debug\shyCtrl.pdb
文件 180 2011-10-21 23:41 shyCtrl\shyCtrl\obj\Debug\shyCtrl.shyCalendar.resources
文件 1444 2011-10-21 23:26 shyCtrl\shyCtrl\Properties\AssemblyInfo.cs
文件 10738 2011-10-23 14:36 shyCtrl\shyCtrl\shyCalendar.cs
文件 13358 2011-10-21 23:40 shyCtrl\shyCtrl\shyCalendar.Designer.cs
文件 7084 2011-10-21 23:40 shyCtrl\shyCtrl\shyCalendar.resx
文件 2858 2011-10-21 23:33 shyCtrl\shyCtrl\shyCtrl.csproj
文件 1163 2011-10-23 14:05 shyCtrl\shyCtrl.sln
..A..H. 18432 2011-10-23 14:05 shyCtrl\shyCtrl.suo
目录 0 2011-10-21 23:26 shyCtrl\shyCtrl\obj\Debug\TempPE
目录 0 2011-10-21 23:33 shyCtrl\shyCtrl\bin\Debug
目录 0 2011-10-21 23:27 shyCtrl\shyCtrl\bin\Release
目录 0 2011-10-23 14:36 shyCtrl\shyCtrl\obj\Debug
目录 0 2011-10-21 23:27 shyCtrl\shyCtrl\bin
目录 0 2011-10-21 23:26 shyCtrl\shyCtrl\obj
目录 0 2011-10-21 23:26 shyCtrl\shyCtrl\Properties
目录 0 2011-10-21 23:28 shyCtrl\shyCtrl
目录 0 2011-10-23 14:05 shyCtrl
----------- --------- ---------- ----- ----
158980 27
............此处省略0个文件信息
- 上一篇:asp.net线程教程
- 下一篇:C#RDLC动态加载图片
相关资源
- C#百度地图源码
- Visual C#.2010从入门到精通配套源程序
- Winform可视化打印模板设计工具含源码
- C# 软件版本更新
- C#屏幕软键盘源码,可以自己定制界面
- 智慧城市 智能家居 C# 源代码
- c#获取mobile手机的IMEI和IMSI
- C#实现简单QQ聊天程序
- 操作系统 模拟的 欢迎下载 C#版
- C#写的计算机性能监控程序
- 用C#实现邮件发送,有点类似于outlo
- MVC model层代码生成器 C#
- c#小型图书销售系统
- C# Socket Server Client 通讯应用 完整的服
- c# winform 自动登录 百度账户 源代码
- C#编写的16进制计算器
- C#TCP通信协议
- C# 数据表(Dataset)操作 合并 查询一
- C#语音识别系统speechsdk51,SpeechSDK51L
- 数据库备份还原工具1.0 C# 源码
-
[免费]xm
lDocument 节点遍历C# - EQ2008LEDc#开发实例
- DirectX.Capturec# winform 操作摄像头录像附
- c# 实现的最大最小距离方法对鸢尾花
- C#版保龄球记分代码
- C#自定义控件
- 基于c#的实验室设备管理系统621530
- C# 使用ListView控件实现图片浏览器(源
- C#简单窗体聊天程序
- C#指纹识别系统程序 报告
评论
共有 条评论