Thanks for answering so quickly.
Please find further down the code I use. An interesting point: if I do a refresh at the end of the data assignment in the presenter class then the chart gets drawn without the problem : View.fxVamiChart.Refresh();
<UserControl.Resources>
...
<report:FXchartSeries x:Key="vamiChartData"/>
</UserControl.Resources>
...
<ChartFX:Chart Name ="fxVamiChart" Grid.Row="0" Grid.Column="0" Width="500" Height="340" ItemsSource="{Binding Source={StaticResource vamiChartData}}" Gallery="Line">
<ChartFX:Chart.Titles>
<ChartFX:Title FontSize="16" Foreground="Black">value added monthly index (VAMI)</ChartFX:Title>
</ChartFX:Chart.Titles>
<ChartFX:Chart.AxisY>
<ChartFX:Axis Title="" >
<ChartFX:Axis.Grids>
<ChartFX:Grids Minor="{x:Null}">
<ChartFX:Grids.Major>
<ChartFX:GridLine Stroke="LightGray" Visibility="Visible"/>
</ChartFX:Grids.Major>
</ChartFX:Grids>
</ChartFX:Axis.Grids>
</ChartFX:Axis>
</ChartFX:Chart.AxisY>
<ChartFX:Chart.Series>
<ChartFX:SeriesAttributes ToolTips="{x:Null}" BindingPath="Val" >
<ChartFX:SeriesAttributes.Marker>
<ChartFX:MarkerAttributes Stroke="{x:Null}" Visibility="Hidden" />
</ChartFX:SeriesAttributes.Marker>
</ChartFX:SeriesAttributes>
</ChartFX:Chart.Series>
<ChartFX:Chart.AxisX>
<ChartFX:Axis Title="Time">
<ChartFX:Axis.Grids>
<ChartFX:Grids Minor="{x:Null}" >
<ChartFX:Grids.Major>
<ChartFX:GridLine Stroke="LightGray" Visibility="Hidden" />
</ChartFX:Grids.Major>
</ChartFX:Grids>
</ChartFX:Axis.Grids>
<ChartFX:Axis.Labels>
<ChartFX:AxisLabelAttributes BindingPath="Cat" Angle="90" />
</ChartFX:Axis.Labels>
</ChartFX:Axis>
</ChartFX:Chart.AxisX>
</ChartFX:Chart>
===> In the code-behind class (View)
public FXchartSeries ChartVAMI { get { return (FXchartSeries)this.FindResource("vamiChartData"); } }
===> In the presenter class
View.ChartVAMI.Clear();
View.ChartVAMI.Add(new Reporting.Point { Cat = dates[0].ToString("MMM yy"), Val = 100 });
for (int i = 0; i < performance.Index.Length; i++)
{
View.ChartVAMI.Add(new Reporting.Point { Cat = dates[i + 1].ToString("MMM yy"), Val = 100 * performance.Index[i] });
}
===> The Reporting.Point class
public class Point
{
public double Val { get; set; }
public string Cat { get; set; }
public string Tx { get; set; }
public double X { get; set; }
public DateTime Time { get; set; }
}