同步 MonthCalendar 和 Datetimepicker
Posted
技术标签:
【中文标题】同步 MonthCalendar 和 Datetimepicker【英文标题】:Synchronize MonthCalendar and Datetimepicker 【发布时间】:2013-08-20 14:05:02 【问题描述】:我在表单中有一个 MonthCalendar 和一个 Datetimepicker。有没有办法同步它们?换句话说,当我更改 MonthCalendar 的日期时,DateTimePicker 的日期将自动等于该日期,反之亦然。 我在下面尝试了这些,但都不起作用。
datetimePicker1 = monthCalendar1.SelectionRange.ToString("dd MMMM yyyy hh :mm");
monthCalendar1 = datetimePicker1.Value.ToOADate();
【问题讨论】:
您的monthCalendar1
是否具有Date
或Value
之类的DateTime
类型的属性?顺便说一句,它有DataBindings
吗?
@KingKing 这是 Visual Studio 提供的默认月份日历,我认为它没有这些属性。
【参考方案1】:
只需使用这些控件的默认事件来更新另一个。双击控件以添加事件处理程序并使它们看起来像这样:
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
monthCalendar1.SetDate(dateTimePicker1.Value);
private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
dateTimePicker1.Value = monthCalendar1.SelectionStart;
请注意,DateTimePicker 已经内置了 MonthCalendar,您可以在单击下拉按钮时获得它。这是它的典型使用方式,它们已经同步了。
【讨论】:
这正是我想要的。是的,我被告知了这一点,但在这个项目中,出于某些原因,我想同时拥有这两者。谢谢。以上是关于同步 MonthCalendar 和 Datetimepicker的主要内容,如果未能解决你的问题,请参考以下文章
当 ShowToday 为 False 时,MonthCalendar 控件有额外的边框