Календарь Инструментария WPF берет два щелчка для получения фокуса

Я использую Календарь WPF, который является частью Инструментария WPF.

У меня есть два различных календаря на управлении. Когда я пытаюсь выбрать дату из одного календаря и затем из второго календаря, я должен нажать на второй календарь дважды, чтобы заставить это выбирать дату.

Кто-либо еще имел эту проблему и знает о решении?

29
задан timothymcgrath 11 March 2010 в 14:56
поделиться

2 ответа

Календарь может захватывать мышь без изменения даты (например, в режиме детализации CalendarMode). Лучшее решение:

protected override void OnPreviewMouseUp(MouseButtonEventArgs e)
{
    base.OnPreviewMouseUp(e);
    if (Mouse.Captured is CalendarItem)
    {
        Mouse.Capture(null);
    }
}
35
ответ дан 28 November 2019 в 01:52
поделиться

Я добавил этот код при изменении 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
4
ответ дан 28 November 2019 в 01:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: