我遇到了一些WPF代碼的問題。這是我之前在另一個項目中使用的代碼,運行良好。我有一個Dots.cs類,它是包含我的主Window1.xaml.cs的項目的依賴項。WPF NullReferenceException
在Dots.cs我有這樣的功能:
public void MakeDraggable(Canvas theCanvas)
{
_canvas = theCanvas;
_canvas.PreviewMouseDown += DPreviewMouseLeftButtonDown;
}
我接收到的InnerException「{System.NullReferenceException:對象不設置爲一個對象的一個實例。 在GraphicsBook.Dot.MakeDraggable(帆布theCanvas)在... \ Dot.cs:線261 在GraphicsBook.Window1..ctor()在... \ Window1.xaml.cs:線47}
我Window1.xaml.cs內MakeDraggable方法的調用是:
myDots = new Dot[3];
myDots[0] = new Dot(new Point(-40, 60));
myDots[1] = new Dot(new Point(40, 60));
myDots[2] = new Dot(new Point(40, -60));
for (int i = 0; i < 3; i++)
{
myDots[i].MakeDraggable(gp);
gp.Children.Add(myDots[i]);
}
對於Dot.cs清晰度261線是:
_canvas.PreviewMouseDown += DPreviewMouseLeftButtonDown;
和線路47 Window1.xaml.cs是:
myDots[i].MakeDraggable(gp);
幾乎所有的'NullReferenceException'都是一樣的。請參閱「[什麼是.NET中的NullReferenceException?](http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-in-net)」的一些提示。 – 2014-11-14 17:15:40