我在 Windows 窗体应用程序 PaymentInfo 中有一个方法,它在填充listView1
listView 后从子项中填充标签:
internal void PaymentInfo()
{
label3.Text = "Amount Paid: " + listView1.SelectedItems[0].SubItems[1].Text.ToString();
label3.Refresh();
label6.Text = "Payment Type: " + listView1.SelectedItems[0].SubItems[5].Text.ToString();
label6.Refresh();
}
listView1
填充后,我尝试使用以下方法调用该方法:
listView1.Items[0].Selected = true;
listView1.Items[0].Focused = true;
PaymentInfo();
这有效地选择了列表中的第一项,但是当它尝试运行 PaymentInfo 时,我ArgumentOutOfRangeException
在开头的行中得到一个label3.Text
,详细信息是
“InvalidArgument = '0' 的值对 'index' 无效。”
我也用 调用 PaymentInfo listView1_MouseClick
,它工作正常。我检查了其他几件事,并注意到即使我以编程方式选择项目,也会SelectedItems.Count
返回0
. 为什么会这样?谢谢!