Я использую Календарь WPF, который является частью Инструментария WPF.
У меня есть два различных календаря на управлении. Когда я пытаюсь выбрать дату из одного календаря и затем из второго календаря, я должен нажать на второй календарь дважды, чтобы заставить это выбирать дату.
Кто-либо еще имел эту проблему и знает о решении?
Календарь может захватывать мышь без изменения даты (например, в режиме детализации CalendarMode). Лучшее решение:
protected override void OnPreviewMouseUp(MouseButtonEventArgs e)
{
base.OnPreviewMouseUp(e);
if (Mouse.Captured is CalendarItem)
{
Mouse.Capture(null);
}
}
Я добавил этот код при изменении SelectedDates календаря, и он исправил проблему.
Private Sub Calendar_SelectedDatesChanged(ByVal sender As Object, ByVal e As System.Windows.Controls.SelectionChangedEventArgs) Handles Me.SelectedDatesChanged
Me.DisplayDate = CType(Me.SelectedDate, DateTime)
' This is to prevent the Calendar DayButtons from holding the focus in the Calendar.
Me.CaptureMouse()
Me.ReleaseMouseCapture()
End Sub