我正在尝试设置 wpf telerik 轨迹球的标题。 我想显示的是“X 位置:12.2”,其中 12.2 基于轨迹球当前的位置。
我正在使用 SeriesProvider 来生成散点线。我目前拥有的是SeriesProvider:
<telerik:RadCartesianChart.SeriesProvider>
<telerik:ChartSeriesProvider Source="{Binding LineOutputModels, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}">
<telerik:ScatterSeriesDescriptor
ItemsSourcePath="DataPoints"
XValuePath="X"
YValuePath="Y">
<telerik:ScatterSeriesDescriptor.Style>
<Style TargetType="telerik:ScatterLineSeries">
<Setter Property="Stroke" Value="{Binding Color}" />
<Setter Property="TrackBallInfoTemplate" Value="{StaticResource trackBallInfoTemplate}" />
</Style>
</telerik:ScatterSeriesDescriptor.Style>
</telerik:ScatterSeriesDescriptor>
</telerik:ChartSeriesProvider>
</telerik:RadCartesianChart.SeriesProvider>
我想做的是类似的事情
<telerik:RadCartesianChart.TrackBallInfoStyle>
<Style TargetType="telerik:TrackBallInfoControl">
<Setter Property="Header" Value="{Binding Trackball.XPosition}" />
</Style>
</telerik:RadCartesianChart.TrackBallInfoStyle>
但我无法让它发挥作用。我必须为此使用代码隐藏吗?
TrackBallInfoControl
的数据上下文继承自父级DataContext
元素的RadCartesianChart
。
为了实现您的要求,您可以将
x:Name
分配给 ChartTrackBallBehavior
并使用 ElementName
绑定来访问行为的 Position
属性。
<telerik:RadCartesianChart.TrackBallInfoStyle>
<Style TargetType="telerik:TrackBallInfoControl">
<Setter Property="Header" Value="{Binding ElementName=trackBallBehavior, Path=Position.X}" />
</Style>
</telerik:RadCartesianChart.TrackBallInfoStyle>
<telerik:RadCartesianChart.Behaviors>
<telerik:ChartTrackBallBehavior x:Name="trackBallBehavior"/>
</telerik:RadCartesianChart.Behaviors>