C# 检查列表的索引是否<;列表<;字符串>&燃气轮机;不为空
我有一个C# 检查列表的索引是否<;列表<;字符串>&燃气轮机;不为空,c#,winforms,list,C#,Winforms,List,我有一个列表,和一个包含10项的组合框,当所选索引发生更改时,我使用组合框\u selectedIndexChanged事件将此索引的数据绑定到列表框 我还有Add和Remove按钮,可以将数据插入我的列表那么: int selectedIndex = comboBox1.SelectedIndex; if (selectedIndex == 1 || (myList.Count >= selectedIndex && myList[selectedIndex - 1] !
列表
,和一个包含10项的组合框
,当所选索引发生更改时,我使用组合框\u selectedIndexChanged
事件将此索引的数据绑定到列表框
我还有Add
和Remove
按钮,可以将数据插入我的列表那么:
int selectedIndex = comboBox1.SelectedIndex;
if (selectedIndex == 1 || (myList.Count >= selectedIndex && myList[selectedIndex - 1] != null))
{
myList[selectedIndex].Add(textEdit1.Text);
}
else
MessageBox.Show("Please fill the previous indexes first.");
如果selectedIndex==1为true,则它不会测试if语句中的第二个参数,也不会抛出错误。如果不是1,它将测试第二个参数,并且不会抛出错误。我将尽可能避免使用列表的列表。整个代码都会变得非常混乱。我建议您将内部列表
转换为类
,这样您将拥有对象
的列表
,而不是列表
的列表。您可以使用try:catch来处理特定错误吗?另外,我们需要从您的代码中获得更多信息。myList
指的是“外部”List
还是“内部”List
?@CJ你是对的,我把它改成了一个List,它仍然很乱,但我想不出更好的方法了。。
int selectedIndex = comboBox1.SelectedIndex;
if (selectedIndex == 1 || (myList.Count >= selectedIndex && myList[selectedIndex - 1] != null))
{
myList[selectedIndex].Add(textEdit1.Text);
}
else
MessageBox.Show("Please fill the previous indexes first.");