Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检查变量为Null时出现NullReferenceException_C#_Wpf - Fatal编程技术网

C# 检查变量为Null时出现NullReferenceException

C# 检查变量为Null时出现NullReferenceException,c#,wpf,C#,Wpf,我在WPF应用程序中得到了一个奇怪的NullReferenceExcpetion。我不是每次都这样,即使我做同样的手术。谁能解释一下原因吗 注意:添加这些行之后,我对应用程序做了很多更改,并重新编译了几次。所以这不是构建或编译的问题 编辑:我的堆栈跟踪可以从这里找到,我无法重现错误,它一定与您的收藏有关。你的收藏品是什么样子的? 这两种方法都可以解决问题- public partial class MainWindow : Window { private static object l

我在WPF应用程序中得到了一个奇怪的NullReferenceExcpetion。我不是每次都这样,即使我做同样的手术。谁能解释一下原因吗

注意:添加这些行之后,我对应用程序做了很多更改,并重新编译了几次。所以这不是构建或编译的问题


编辑:我的堆栈跟踪可以从这里找到,

我无法重现错误,它一定与您的收藏有关。你的收藏品是什么样子的? 这两种方法都可以解决问题-

public partial class MainWindow : Window
{
    private static object lockObj = new object(); //Add


堆栈跟踪是什么?堆栈跟踪会很有用-我的钱在一个重写的运算符==上,这就是问题的原因。这就是AmazonUrl类中的全部内容吗?你能用?@maamaa重现这个吗?我们需要异常堆栈跟踪,而不是调用堆栈。它应该打印到输出窗口。@maamaa您也可以使用字符串集合作为源,您只需要自己在xaml中定义列标题
public partial class MainWindow : Window
{
    private static object lockObj = new object(); //Add
public List<string> getURLList()
  {
     List<string> urlList = new List<string>();

     for (int i = 0; i < AmazonUrlList.Count; i++)
     {
        Amazon url = new AmazonUrl();  // Add
        url = AmazonUrlList[i];        // Update
private void openMenuItem_Click(object sender, RoutedEventArgs e)
  {
     lock (lockObj) // Add
     {
        List<string> urlList = getURLList(); //This is where exception occur
     }