我有一个 WPF DatePicker,和任何日期选择器一样,它有一个内置日历,您可以通过单击小日历图标打开它。
这个日历被放在一个弹出菜单中,所以它的行为就像一个,即:一旦它被打开,有两种方法可以关闭它:
- 验证您的选择(用鼠标单击日期,点击“Enter”并突出显示日期等...)
- 取消(点击“Echap”,在弹出窗口外点击,等等...)
我的问题是,我需要知道使用了哪个,但我似乎无法找到一种方法来做到这一点。
现在我听“CalendarClosedEvent”,但它没有告诉我日历是如何关闭的。
我还使用“PreviewKeyDownEvent”来捕获“Echap”键,效果很好,除了它不包括用户在日历之外单击以关闭它的情况。
有没有办法做到这一点?如果有,那是什么?
(注意:我对弹出菜单对象而不是 datePicker 中的日历对象的通用答案感到满意)