[英]Null Exception Error when checking string for null?
当我运行代码时,我在文本框的不同行上放置了多个字符串,但是它断了,说“ Items.Add(item)”上存在Null Exception错误,我不确定为什么会收到此错误,因为在Visual Studio中,该字符串变量item不为null,它包含一个返回字符,因此我不确定这是否是一个问题。例如item =“ uno \\ r”。 另外,Items是字符串列表。 有谁知道为什么我不断收到此Null异常?
public List<string> Items;
public void getItemsFromTextBox(TextBox textbox)
{
string[] lines = textbox.Text.Split('\n');
foreach (string item in lines)
{
if (!String.IsNullOrWhiteSpace(item))
Items.Add(item);
}
}
您尚未初始化列表,它为空! 加
public List<String> Items = new List<String>();
您必须创建Items
列表的实例:
public void getItemsFromTextBox(TextBox textbox)
{
Items = new List<string>();
string[] lines = textbox.Text.Split('\n');
foreach (string item in lines)
{
if (!String.IsNullOrWhiteSpace(item))
Items.Add(item);
}
}
只需尝试以下代码即可。我想您的Items
列表是全局列表和shared
列表。因此最好检查一下List是否已初始化,如果没有初始化,则先进行初始化,然后做其余的事情。
public List<string> Items;
public void getItemsFromTextBox(TextBox textbox)
{
if(null == Items)
{
Items = new List<string>();
}
foreach (string item in textbox.Text.Split('\n'))
{
if (!String.IsNullOrWhiteSpace(item))
Items.Add(item);
}
}
您必须具有“列表项”的实例。
采用
public List<String> Items = new List<String>();
或使用以下代码
public void getItemsFromTextBox(TextBox textbox)
{
List<string> Items = !string.IsNullOrWhiteSpace(textbox.Text) ? textbox.Text.Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList() : new List<string>();
}
确保已实例化“项目”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.