Telerik RadTimeline реагирует на щелчки мышью - PullRequest
0 голосов
/ 02 марта 2012

Есть ли способ узнать, нажал ли пользователь на элемент в RadTimeline?Я хотел бы обработать щелчок и сделать что-то с выбранным элементом временной шкалы, но мой поиск не выявил никакого способа справиться с этим.Я могу зафиксировать щелчок мышью на событии MouseLeftButtonDown, но не вижу способа определить, по какому предмету был нанесен удар, если таковой имеется.

1 Ответ

1 голос
/ 02 марта 2012

По сообщению Telerik, эта функция не поддерживается, но будет доступна в первом квартале 2012 года или в первом квартале 2012 года.

Однако, изучив его, я нашел обходной путь, который, кажется, работает. Если вы переопределите TimelineItemTemplate с помощью DataTemplate с событием MouseLeftButtonDown, то вы можете использовать DataContext отправителя для получения связанных данных.

XAML:

<telerik:RadTimeline x:Name="MatchTimeline" Height="250" PeriodStart="3/1/2012" PeriodEnd="3/30/2012">
<telerik:RadTimeline.Intervals>
    <telerik:DayInterval/>
    <telerik:HourInterval/>
</telerik:RadTimeline.Intervals>
<telerik:RadTimeline.TimelineItemTemplate>
    <DataTemplate>
        <Border Height="14">
            <Grid>
                <Rectangle Height="10" Fill="Blue" MouseLeftButtonDown="Rectangle_MouseLeftButtonDown"/>
            </Grid>
        </Border>
    </DataTemplate>
</telerik:RadTimeline.TimelineItemTemplate>

Код:

private void Rectangle_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    MyTimelineItem item = (MyTimelineItem)(((Telerik.Windows.Controls.DataItemBase)(((System.Windows.FrameworkElement)(sender)).DataContext)).DataItem);
    item.IWasHere();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...