我有一个名为CountriesVM
的类,它实现了ViewModel
Country
的所有属性。基本上在这个类中,窗口上有Charts
的一些属性。一个简单的图表如下所示:
<lvc:CartesianChart Series="{Binding AvgWeather}" LegendLocation="Bottom" />
该属性在CountriesVM
:
public SeriesCollection AvgWeather{ get; set; } = new SeriesCollection();
这个工作得很好,但我有一个问题。我的应用程序中有不同的图表,每个图表都有一个在xaml中绑定的属性。在某些时候,用户可以清除应用程序的所有值,因此我创建了一个方法,再次实例化所有ViewModels
类。
该方法具有以下结构:
public void Reset()
{
CountriesVM = new CountriesVM(); //Initialize again the class
}
所有属性都被正确地初始化为初始值,只有SeriesCollection
属性'导致此错误:
System.NullReferenceException:对未在对象实例上设置的对象的引用。 在C:\ Users \ btord \ Documents \ Projects \ LiveCharts \ WpfView \ Series.cs中的LiveCharts.Wpf.Series.Erase(Boolean removeFromView)中:riga 468
我粘贴了完整的堆栈跟踪here。
我可以解决这个问题,清除每个SeriesCollection
属性,但这很疯狂,我有很多属性而且这不是一种有效的方法。
这是图书馆的错误还是我错过了什么?