搜尋此網誌

2011年9月29日 星期四

Windows From 行事曆

資料來源:
    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 等於點選的日期
}

沒有留言:

張貼留言