or
BarSeriesDefinition barDefinition =
new
BarSeriesDefinition();
barDefinition.Appearance.Fill =
new
SolidColorBrush( Colors.Blue );
ctrlLaneGraph.DefaultSeriesDefinition = barDefinition;
SeriesMapping seriesMapping =
new
SeriesMapping();
seriesMapping.LegendLabel =
"Number of Items"
;
seriesMapping.SeriesDefinition =
new
SplineSeriesDefinition();
seriesMapping.ItemMappings.Add(
new
ItemMapping(
"ItemStart"
, DataPointMember.XValue));
seriesMapping.ItemMappings.Add(
new
ItemMapping(
"ItemPosition"
, DataPointMember.YValue));
seriesMapping.SeriesDefinition = barDefinition;
ctrlLaneGraph.SeriesMappings.Add(seriesMapping);
ctrlLaneGraph.ItemsSource = ItemPosisionList;
ctrlLaneGraph.DefaultView.ChartArea.AxisX.LayoutMode = AxisLayoutMode.Auto;
<
telerik:RadCartesianChart
x:Name
=
"chartVariables"
...
Zoom
=
"{Binding Zoom, Mode=TwoWay}"
PanOffset
=
"{Binding PanOffset, Mode=TwoWay}"
>
<
telerik:RadCartesianChart.Behaviors
>
<
telerik:ChartPanAndZoomBehavior
ZoomMode
=
"Both"
PanMode
=
"None"
/>
</
telerik:RadCartesianChart.Behaviors
>
</
telerik:RadCartesianChart
>
private
void
chartVariables_PanOffsetChanged(
object
sender, ChartPanOffsetChangedEventArgs e)
{
if
((
bool
)
this
.btnInvalidate.IsChecked)
{
DateTimeContinuousAxis axis = chartVariables.HorizontalAxis
as
DateTimeContinuousAxis;
DateTime startDate = axis.ActualVisibleRange.Minimum;
// value is ok
DateTime endDate = axis.ActualVisibleRange.Maximum;
// wrong
tbLog.Text =
"From : "
+ startDate.ToString() +
" - To : "
+ endDate.ToString();
chartVariables.Zoom = oldZoom;
// cancel the zoom
}
}