当突然出现时我没有遇到这个错误 - 不明白为什么。我试过解决它,但没有任何作用。错误发生在" genreList.Items.AddRange(曲目);" (最后一行代码)。有谁知道如何解决这个问题?
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);
}
答案 0 :(得分:0)
使用AddRange
时,您需要避免添加包含null的值trackList[0] = media[0, 1];
if(trackList != null)
{
genreList.Items.AddRange(trackList);
}
答案 1 :(得分:0)
在这一行中,
genreList.Items.AddRange(trackList);
trackList 不是null,因为您刚刚在线前初始化它。此外,您可以使用AddRange方法添加包含空值的列表。所以trackList可以有3个空值,但你仍然不应该看到空引用。
但这种情况发生在List AddRange方法中。
因此,在您的情况下,有一些自定义代码正在创建此异常。请详细说明genreList类和异常的堆栈跟踪。