Chr*_*her 6 c# listview selectedindexchanged winforms
我有一个小的C#3.5的WinForms应用程序,我对工作抓起,从一个服务器的事件日志名称为列表视图.当选择这些项目中的一个,另一个是列表视图填充来自如下所示,抓住了第一个项目的Text属性SelectedItems集合中使用SelectedIndexChanged事件选择的事件日志中的事件日志条目.
string logToGet = listView1.SelectedItems[0].Text;
Run Code Online (Sandbox Code Playgroud)
这在第一次工作正常,但第一次列表视图中的第二个事件日志名称选择失败.正在发生的事情是SelectedItems集合SelectedIndexChanged事件越来越是空的,所以我得到一个ArgumentOutOfRangeException.
我很茫然.关于我做错了什么或更好的方法做任何想法?
Iai*_*ard 13
是的,原因是当您选择另一个项目时,ListView会在选择新项目之前取消选择SelectedItem,因此计数将从1变为0,然后再次变为1.修复它的一种方法是在尝试使用它之前检查SelectedItems集合是否包含一个项目.你这样做的方式很好,你只需要考虑到这一点
例如
if (listView1.SelectedItems.Count == 1)
{
string logToGet = listView1.SelectedItems[0].Text;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17602 次 |
| 最近记录: |