C# 在DateTimePicker中处理今天的单击
我想处理用户今天点击C# 在DateTimePicker中处理今天的单击,c#,winforms,datetimepicker,C#,Winforms,Datetimepicker,我想处理用户今天点击日期时间选择器的部分。我查看了System.Windows.Forms.DateTimePicker的反编译源代码,查找要重写的事件或方法,但找不到任何事件或方法 我知道我可以处理ValueChanged事件并将其与DateTime.Today进行比较,但我特别需要处理点击底部的Today按钮(请参见屏幕截图) 有没有一种方法可以通过使用标准控件(或继承它)来实现这一点,或者我应该使用/创建一个完整的自定义控件来实现这一点?如果您可以计算当前行的矩形: Rectangle
日期时间选择器的部分。我查看了System.Windows.Forms.DateTimePicker
的反编译源代码,查找要重写的事件或方法,但找不到任何事件或方法
我知道我可以处理ValueChanged
事件并将其与DateTime.Today
进行比较,但我特别需要处理点击底部的Today
按钮(请参见屏幕截图)
有没有一种方法可以通过使用标准控件(或继承它)来实现这一点,或者我应该使用/创建一个完整的自定义控件来实现这一点?如果您可以计算当前行的矩形:
Rectangle todayRect = new Rectangle(dateTimePicker1.Left, dateTimePicker1.Bottom + 160, dateTimePicker1.Width, 20);
然后可以将当前鼠标位置与特写
事件处理程序中的矩形进行比较:
dateTimePicker1.CloseUp += (s, e) =>
{
Point p = Cursor.Position;
if (todayRect.Contains(PointToClient(p)))
Console.WriteLine("Today!");
};