To reproduce:
public RadForm1()
{
InitializeComponent();
date = DateTime.Now;
}
int dayCounter;
Random rnd = new Random();
DateTime date;
Timer timer = new Timer();
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
LineSeries lineSeria = new LineSeries();
DateTimeContinuousAxis continuousAxis = new DateTimeContinuousAxis();
continuousAxis.LabelFormat = "{0:dd}";
lineSeria.HorizontalAxis = continuousAxis;
radChartView1.Series.Add(lineSeria);
for (int i = 0; i < 500; i++)
{
radChartView1.Series[0].DataPoints.Add(new CategoricalDataPoint(rnd.Next(1000), date.AddDays(dayCounter++)));
}
timer.Tick += timer_Tick;
timer.Interval = 200;
timer.Start();
}
void timer_Tick(object sender, EventArgs e)
{
foreach (CategoricalDataPoint point in radChartView1.Series[0].DataPoints)
{
// point.Value = rnd.Next(1000);
point.Category = date.AddDays(dayCounter++);
}
}
Workaround:
void timer_Tick(object sender, EventArgs e)
{
DateTimeContinuousAxis continuousAxis = ((LineSeries)radChartView1.Series[0]).HorizontalAxis as DateTimeContinuousAxis;
HybridDictionary hashSet = typeof(Axis).GetField("hashSet", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(continuousAxis) as HybridDictionary;
hashSet.Clear();
}