Ошибка возникает в гораздо более сложном контексте, но могут быть воспроизведены в этом простом примере:WPF Chart Toolkit - NullReferenceException после Series.Clear()
MainWindow.xaml
<Window>
<StackPanel>
<Button Click="Button_Click_1">Clear</Button>
<Button Click="Button_Click_2">Modify</Button>
<charting:Chart x:Name="chart" />
</StackPanel>
</Window>
MainWindow.xaml .cs
public partial class MainWindow : Window
{
Random rand = new Random();
ObservableCollection<KeyValuePair<double, double>> values =
new ObservableCollection<KeyValuePair<double, double>>();
public MainWindow()
{
InitializeComponent();
values.Add(new KeyValuePair<double, double>(10, 10));
values.Add(new KeyValuePair<double, double>(20, 40));
values.Add(new KeyValuePair<double, double>(30, 90));
values.Add(new KeyValuePair<double, double>(40, 160));
values.Add(new KeyValuePair<double, double>(50, 250));
AddSeries();
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
chart.Series.Clear();
AddSeries();
}
private void AddSeries()
{
var series = new LineSeries();
series.SetBinding(LineSeries.ItemsSourceProperty, new Binding());
series.DataContext = values;
series.DependentValueBinding = new Binding("Value");
series.IndependentValueBinding = new Binding("Key");
chart.Series.Add(series);
}
private void Button_Click_2(object sender, RoutedEventArgs e)
{
values[3] = new KeyValuePair<double,double>(40, rand.NextDouble() * 300);
}
}
нажмите на Clear затем нажмите на Modify. Clear удаляет серию из диаграммы и создает новую. Modify изменяет источник привязок к ряду. Удаленные серии называют UpdateDataPoint
где я получаю NullReferenceException: ActualDependentRangeAxis
равно нулю:
protected override void UpdateDataPoint(DataPoint dataPoint)
{
double maximum = ActualDependentRangeAxis.GetPlotAreaCoordinate(
ActualDependentRangeAxis.Range.Maximum).Value;
Я использую Data Visualization Development Releases 4.0
Я пробовал ваш код с версией 3.5, и все работало нормально. И я не могу найти версию 4, на codeplex последняя версия - 3.5. – vorrtex
Это релиз разработки отсюда: http://blogs.msdn.com/b/delay/archive/2010/04/20/phone-y-charts-silverlight-wpf-data-visualization-development-release-4- and-windows-phone-7-charting-sample.aspx – hansmaad