I set AutoRange to false but I still have the same issue. The library version I'm using is 2010.2.714.1040 and here are my codes:
C#
using
System;
using
System.Windows.Controls;
using
Telerik.Windows.Controls.Charting;
namespace
RadChartTest
{
public
partial
class
MainPage : UserControl
{
public
MainPage()
{
InitializeComponent();
SetupChartControl();
CreateDummyView();
System.ComponentModel.BackgroundWorker worker =
new
System.ComponentModel.BackgroundWorker();
worker.DoWork += (o, e) => { System.Threading.Thread.Sleep(4000); };
worker.RunWorkerCompleted += (o, e) =>
{
CreateDummyView();
AxisY myRangeAxis = MyChart.DefaultView.ChartArea.AxisY;
myRangeAxis.AddRange(-3, 3, 0.6);
System.Diagnostics.Debug.WriteLine(
"Worker is Over."
);
};
worker.RunWorkerAsync();
}
private
void
SetupChartControl()
{
ChartLegend myLegend = MyChart.DefaultView.ChartLegend;
myLegend.Visibility = System.Windows.Visibility.Collapsed;
ChartArea myArea = MyChart.DefaultView.ChartArea;
AxisY myRangeAxis = myArea.AxisY;
myRangeAxis.AutoRange =
false
;
myRangeAxis.AddRange(0, 1, 0.1);
}
private
void
CreateDummyView()
{
ChartArea myArea = MyChart.DefaultView.ChartArea;
myArea.DataSeries.Clear();
myArea.DataSeries.SuspendNotifications();
myArea.DataSeries.Add(SineData(2));
myArea.DataSeries.ResumeNotifications();
}
public
static
DataSeries SineData(
double
amp = 1,
double
left = 0,
double
right = 1,
double
step = 1e-3)
{
double
offset =
new
Random().NextDouble() * Math.PI * 2;
LineSeriesDefinition lineDef =
new
LineSeriesDefinition();
lineDef.ShowItemLabels =
false
;
lineDef.ShowItemToolTips =
false
;
lineDef.ShowPointMarks =
false
;
DataSeries ds =
new
DataSeries();
ds.Definition = lineDef;
for
(
double
t = left; t < right; t += step)
{
ds.Add(
new
DataPoint(t, amp * Math.Sin(2 * Math.PI * 10 * t + offset)));
}
return
ds;
}
}
}
XAML
- Alan