0
有什么方法可以知道用户是否点击了RadTimeline中的一个项目?我想处理点击并使用选定的时间轴项目执行某些操作,但是我的搜索没有显示任何处理方法。我可以捕捉鼠标点击MouseLeftButtonDown事件,但我没有看到一个方法来告诉哪个项目被击中,如果有的话。Telerik RadTimeline响应鼠标点击
有什么方法可以知道用户是否点击了RadTimeline中的一个项目?我想处理点击并使用选定的时间轴项目执行某些操作,但是我的搜索没有显示任何处理方法。我可以捕捉鼠标点击MouseLeftButtonDown事件,但我没有看到一个方法来告诉哪个项目被击中,如果有的话。Telerik RadTimeline响应鼠标点击
根据Telerik的说法,该功能不受支持,但可用于2012年第1季度或2012年第2季度发布。
但是,经过研究,我找到了一种解决方法,似乎工作。如果使用其上具有MouseLeftButtonDown
事件的DataTemplate覆盖TimelineItemTemplate,则可以使用发件人的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();
}
根据Telerik的,这不支持此功能,但将供2012年第一季度SP1或2012年第二季度发布。我从那以后找到了解决这个问题的解决方法。 – 2012-03-01 21:45:35