我的C#代码和绑定有一个奇怪的问题。当我以.exe运行它或在调试模式下运行Windows 7 64位的另一台机器上运行它时,代码工作正常。只在我在特定计算机上进行调试时才会出现此问题。类型' System.ArgumentNullException'的例外情况发生在System.dll中但未在用户代码中处理。我无法弄清楚问题是什么。我已经评论了一些我添加的代码,它解决了问题,但我无法弄清楚为什么它只发生在一台机器上。
我发现了一篇关于.net 4.5中的错误的有趣帖子 Combobox SelectedItem DataBinding NullReference Exception
以下是导致异常并绑定到数据的代码
private ObservableCollection<DataPoint> _pin1 { get; set; }
public IList<DataPoint> Pin_1 { get; set; }
public ObservableCollection<DataPoint> Pin1
{
get
{
//if(Pin_1 != null)
return _pin1 = new ObservableCollection<DataPoint>(Pin_1);
//return _pin1 = null;
}
set
{
if (_pin1 != value)
{
_pin1 = value;
OnPropertyChanged("Pin1");
}
}
}
我已经看过以下类似的问题,并认为这些可能就是我所经历的。
Two-way binding with Windows Forms ComboBox throws NullReferenceException when changed