Telerikによると、この機能はサポートされていませんが、Q1 2012 SP1またはQ2 2012リリースで利用可能です。
しかし、調査したところ、うまくいくと思われる回避策が見つかりました。 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によると、この機能はサポートされませんが、Q1 2012 SP1または2012年第2四半期のリリースのために利用できるようになります。私はその後、仕事をする回避策を見つけました。 –