資料來源:
http://www.codeproject.com/KB/selection/MonthCalendar.aspx
前置準備:
由於windowform中的元件Month Calendar是無法改變單一日期顏色所以請先
請到資料來源的網站中下載元件
"Download
demo (.NET 2.0) - 67.4 Kb"
一.開啟一個新的專案
二.專案-->屬性
確認目標Framework得屬性為.NETFramework4
不要選到Clint那個不然等下元件加進去建置完就會消失
之前沒注意到搞了好久~吃了好大的虧阿
三.工具箱-->加入索引標籤(Pabo)-->
右鍵-->選擇項目-->然後加入MonthCalendar.dll
四.將MonthCalendar托放至畫面
五.變更假日跟當日顏色
private void monthCalendar1_DayQueryInfo(object sender, Pabo.Calendar.DayQueryInfoEventArgs e)
{
// 假日變更顏色
if (e.Date.DayOfWeek == DayOfWeek.Saturday || e.Date.DayOfWeek == DayOfWeek.Sunday)
{
if (e.Date.Month == monthCalendar1.ActiveMonth.Month)
{
// Add custom formatting
e.Info.BackColor1 = Color.Red;
e.Info.BackColor2 = Color.GhostWhite;
e.Info.ImageListIndex = 3;
// Set ownerdraw = true to add custom formatting
e.OwnerDraw = true;
}
}
//當日變更顏色
if (monthCalendar1.ActiveMonth.Month == DateTime.Now.Month )
{
if (e.Date == DateTime.Now.Date)
{
e.Info.BackColor1 = Color.SandyBrown;
e.Info.BackColor2 = Color.GhostWhite;
e.Info.ImageListIndex = 3;
// Set ownerdraw = true to add custom formatting
e.OwnerDraw = true;
}
}
}
六.變更年月份年份時執行
private void monthCalendar1_MonthChanged(object sender, Pabo.Calendar.MonthChangedEventArgs e)
{
}
七 雙擊點選時執行
private void monthCalendar1_DayDoubleClick(object sender, Pabo.Calendar.DayClickEventArgs e)
{
//e.Date 等於點選的日期
}
沒有留言:
張貼留言