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