我有一个WPF DatePicker,就像任何一个日期选择器一样,它有一个内置日历,你可以点击小日历图标打开它。
这个日历放在一个弹出菜单中,所以它的行为就像一个,即:一旦打开,有2种方法可以关闭它:
我的问题是,我需要知道使用了哪一个,而且我似乎找不到办法来做到这一点。
现在我听“CalendarClosedEvent”,但它没有告诉我 日历是如何关闭的。
我还使用“PreviewKeyDownEvent”来捕获“Echap”键,该键效果很好,但不包括当用户点击日历以关闭它时的情况。
有办法做到这一点吗?如果是的话,它是什么?
(注意:我对关于弹出菜单对象而不是datePicker中的日历对象的通用答案感到满意)
答案 0 :(得分:1)
至少对于DatePicker,您可以将SelectedDate设置为null(实际上是默认值,只需保留)。然后,只要用户在控件内单击,就会触发SelectedDateChanged。
这是我唯一能找到标记差异的东西。希望它有所帮助。