开发者

WPF Toolkit Calendar takes two clicks to get focus

开发者 https://www.devze.com 2022-12-22 10:46 出处:网络
I am using the WPF Calendar that is part of the WPF Toolkit. I have two different calendars on a control.When I attempt to choose a date from one calendar and then from the second calendar, I have to

I am using the WPF Calendar that is part of the WPF Toolkit.

I have two different calendars on a control. When I attempt to choose a date from one calendar and then from the second calendar, I have to click on the second calendar twice to get it to choose a date.

Has anyone else h开发者_开发知识库ad this issue and know of a solution?


The calendar can capture the mouse without a date change (e.g. in CalendarMode drill down). A better solution is this:

protected override void OnPreviewMouseUp(MouseButtonEventArgs e)
{
    base.OnPreviewMouseUp(e);
    if (Mouse.Captured is CalendarItem)
    {
        Mouse.Capture(null);
    }
}


I added this code when changing the SelectedDates of the Calendar and it fixed the issue.

        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
0

精彩评论

暂无评论...
验证码 换一张
取 消