winfrom 的 monthCalendar 指定日期字体加粗
本来想改字体颜色的,发现不得行,但是可以把指定的日期加粗,如图:
图1
图2
private void Form1_Load(object sender, EventArgs e){//指定的需高亮的日期范围(可以是连续日期,也可以是断断续续的日期)List<DateTime> dtList = new List<DateTime>();for (int i = 0; i < 7; i++){dtList.Add(DateTime.Now.AddDays(-i).Date);}DateTime[] dtArr = dtList.ToArray();//list转数组this.monthCalendar1.BoldedDates = dtArr;//给BoldedDates属性赋值(图1)//this.monthCalendar1.AnnuallyBoldedDates = dtArr;//每年要被加粗的日期//this.monthCalendar1.MonthlyBoldedDates = dtArr;//每月要被加粗的日期//this.monthCalendar1.SelectionRange = new SelectionRange(dtArr[0], dtArr[dtArr.Length - 1]);//用蓝色背景高亮显示日期(图2)this.monthCalendar1.ShowToday = false;//不显示:今天是...天,的提示信息this.monthCalendar1.TodayDate = DateTime.Now.AddDays(-7).Date;//指定某一天,高亮}
说明:
this.monthCalendar1.BoldedDates = dtArr; //dtArr是DateTime[]数组,是要加粗的日期数组
this.monthCalendar1.AnnuallyBoldedDates = dtArr;//每年要被加粗的日期
this.monthCalendar1.MonthlyBoldedDates = dtArr;//每月要被加粗的日期
this.monthCalendar1.SelectionRange = new SelectionRange(dtArr[0], dtArr[dtArr.Length - 1]);//用蓝色背景高亮显示日期
this.monthCalendar1.TodayDate = DateTime.Now.AddDays(-7).Date;//是给指定的某一天加一个框