值不能为空(异常)

本文关键字:异常 不能 | 更新日期: 2023-09-27 17:56:42

当它突然出现时,我没有遇到此错误 - 不知道为什么。我已经尝试解决它,但没有任何效果。错误发生在" genreList.Items.AddRange(trackList);"(最后一行代码)。有谁知道如何解决这个问题?

    private void readFile()
    {
        string[] lines = System.IO.File.ReadAllLines(>path<);
        for (int i = 0; i <= 10; i++)
        {
            if (i == 2)
            {
                media[0, 0] = lines[i]; // General (title)
                System.Diagnostics.Debug.WriteLine(media[0, 0]); // Debug, checking values in array after each 'if'
            }
            if (i == 3)
            {
                media[0, 1] = lines[i]; // Introduction.wma (list)
                System.Diagnostics.Debug.WriteLine(media[0, 1]);
            }
            if (i == 5)
            {
                media[1, 0] = lines[i]; // Setup (title)
                System.Diagnostics.Debug.WriteLine(media[1, 0]);
            }
            if (i == 6)
            {
                media[1, 1] = lines[i]; // Calling Setup.wma (list)
                System.Diagnostics.Debug.WriteLine(media[1, 1]);
            }
            if (i == 8)
            {
                media[2, 0] = lines[i]; // Hint & Tips (title)
                System.Diagnostics.Debug.WriteLine(media[2, 0]);
            }
            if (i == 9)
            {
                media[2, 1] = lines[i]; // Big Bad John (1961) - Jimmy Dean.mp3 (list)
                System.Diagnostics.Debug.WriteLine(media[2, 1]);
            }
            if (i == 10)
            {
                media[2, 2] = lines[i]; // My Ding A Ling - Chuck Berry.mp3 (list)
                System.Diagnostics.Debug.WriteLine(media[2, 2]);
            }
        }
    }
    private void populateGenreList()
    {
        genreTitle.Text = media[0, 0];
        string[] trackList = new string[3];
        trackList[0] = media[0, 1];
        genreList.Items.AddRange(trackList);
    }

值不能为空(异常)

在使用 AddRange 时,需要避免添加包含 null 的值

trackList[0] = media[0, 1];
if(trackList != null)
{
        genreList.Items.AddRange(trackList);
}

在这一行中,

genreList.Items.AddRange(trackList);

trackList 不为空,因为您只是在一行前初始化它。此外,还可以使用 AddRange 方法添加包含空值的列表。所以 trackList 可能有 3 个空值,但你仍然不应该看到空引用。

但这发生在列表添加范围方法上。

因此,在您的情况下,有一些自定义代码正在创建此异常。请定义流派列表类和异常的堆栈跟踪。

相关文章: