【发布时间】:2019-10-09 14:46:49
【问题描述】:
我有一个列表视图,其中多选属性设置为 false。当用户单击它时,我获取列表视图项的 NAME 属性并将其转换为小数,然后将其提供给加载正确记录的方法。
当我选择一个项目时,无论列表中有多少项目,也不管我选择了哪个项目,下面的代码都能完美运行。
private void ListInstruments_SelectedIndexChanged(object sender, EventArgs e)
{
ListViewItem selection = listInstruments.SelectedItems[0];
if (selection != null)
{
string strSelection = selection.Name;
SelectedInstrumentID = Convert.ToDecimal(strSelection);
LoadSelectedInstrument();
}
}
当我进行第二次选择(不是多选,而是从列表框中选择不同的选项)时,我收到一个引用 listInstruments.SelectedItems[0] 的错误。
System.ArgumentOutOfRangeException 消息=InvalidArgument=值 “0”对“索引”无效。参数名称:索引 Source=System.Windows.Forms
任何帮助将不胜感激。
【问题讨论】:
-
而不是 SelectedItems[0],检查是否可以从 EventArgs e 中获取索引。像 e.Index 之类的东西还是其他东西?并在 SelectedItems[e.Index] 中使用它
-
我要试试这个,谢谢。