专业的编程技术博客社区

网站首页 > 博客文章 正文

67.C# MonthCalendar控件(c#控件位置设置)

baijin 2024-10-15 08:30:44 博客文章 9 ℃ 0 评论

摘要


该控件使用户能够使用可视月历显示来选择日期。

MonthCalendar 控件允许用户使用视觉对象显示选择日期。 可以通过设置和MaxDate属性来限制可选择的MinDate日期和时间。

可以通过设置ForeColor控件Font、、TitleBackColor、TitleForeColor和TrailingForeColorBackColor属性来更改控件的日历部分的外观。

正文


属性

BackColor

获取或设置控件的背景色。

FirstDayOfWeek

根据月历中的显示获取或设置一周中的第一天。

MaxSelectionCount

获取或设置月历控件中可选择的最大天数。

MinDate

获取或设置允许的最小日期。

MonthlyBoldedDates

获取或设置 DateTime 对象的数组,确定每月要用粗体显示的日期。

ShowToday

获取或设置一个值,该值指示控件底端是否显示 TodayDate 属性表示的日期。

ShowTodayCircle

获取或设置一个值,该值指示是否用圆圈或正方形标识今天日期。

ShowWeekNumbers

获取或设置一个值,该值指示月历控件是否在每行日期的左侧显示周数 (1-52)。

SingleMonthSize

获取显示一个日历月所需的最小大小。

Text

获取或设置要在 MonthCalendar 上显示的文本。

TitleBackColor

获取或设置指示日历标题区的背景色的值。

TitleForeColor

获取或设置指示日历标题区的前景色的值。

TodayDate

获取或设置由 MonthCalendar 用作今天的日期的值。

TodayDateSet

获取指示是否已显式设置 TodayDate 属性的值。

方法

SetCalendarDimensions(Int32, Int32)

设置要显示的月份的列数和行数。

SetDate(DateTime)

将日期设置为当前选定的日期。

SetSelectionRange(DateTime, DateTime)

将月历控件中的选定日期设置为指定的日期范围。

初使化显示

//一年中要以粗体显示的日期
this.monthCalendar1.AnnuallyBoldedDates =
    new System.DateTime[] { new System.DateTime(2022, 4, 20, 0, 0, 0, 0),
                        new System.DateTime(2022, 4, 28, 0, 0, 0, 0),
                        new System.DateTime(2022, 4, 5, 0, 0, 0, 0),
                        new System.DateTime(2022, 4, 4, 0, 0, 0, 0),
                        new System.DateTime(2022, 4, 15, 0, 0, 0, 0),
                        new System.DateTime(2022, 4, 18, 0, 0, 0, 0)};

//以粗体显示的非周期性日期。
this.monthCalendar1.BoldedDates = new System.DateTime[] { new System.DateTime(2022, 7, 25, 0, 0, 0, 0) };

//每月要用粗体显示的日期。
this.monthCalendar1.MonthlyBoldedDates =
   new System.DateTime[] {new System.DateTime(2022, 1, 15, 0, 0, 0, 0),
                      new System.DateTime(2022, 1, 30, 0, 0, 0, 0)};

//显示月份的列数和行数,一排多少个日历
this.monthCalendar1.CalendarDimensions = new System.Drawing.Size(4, 3);

// 设置一周中的第一天
this.monthCalendar1.FirstDayOfWeek = System.Windows.Forms.Day.Monday;

//最大可见日期
this.monthCalendar1.MaxDate = new System.DateTime(2025, 12, 31, 0, 0, 0, 0);

//最小可见日期
this.monthCalendar1.MinDate = new System.DateTime(2018, 1, 1, 0, 0, 0, 0);

//可选择的最大天数。
this.monthCalendar1.MaxSelectionCount = 21;

//月历控件的滚动率
this.monthCalendar1.ScrollChange = 1;

//控件底端是否显示今天
this.monthCalendar1.ShowToday = true;

//否用圆圈或正方形标识今天日期
this.monthCalendar1.ShowTodayCircle = true;

//月历控件是否在每行日期的左侧显示周数 (1-52)
this.monthCalendar1.ShowWeekNumbers = true;

取得选中的日期

private void btnGetValue_Click(object sender, EventArgs e)
{
    for (DateTime i = this.monthCalendar1.SelectionStart; i < this.monthCalendar1.SelectionEnd; i=i.AddDays(1))
    {
        MessageBox.Show(i.ToString("yyyy-MM-dd"));
    }
}

DataChange事件

private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
{
    this.txtValue.Text = e.Start.ToString();
}

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表