-2

我有一个列表框,我想在循环运行时取消选择列表中的第一个选定项目,因为它应该一个接一个地处理列表项。目前我正在使用这个:

var list = new object[listBoxTracks.SelectedItems.Count];
for (int i = 1; i < listBoxTracks.SelectedItems.Count; i++)
    list[i - 1] = listBoxTracks.SelectedItems[i];

listBoxTracks.SelectedItems.Clear();
foreach (var track in list)
    listBoxTracks.SelectedItems.Add(track);

我认为/知道这可能非常糟糕,但我不知道还有什么其他可能性。我尝试了 selectedIndex += 1 等的东西,但这似乎让它崩溃了。如果在我很抱歉之前已经回答了这个问题,但我在我的研究中没有发现任何东西:/

4

2 回答 2

2

据我所知,您可以直接操作 SelectedItems。因此,您还可以从中删除单个项目,例如

listBoxTracks.SelectedItems.Remove(listBoxTracks.SelectedItems[0]);
于 2015-04-19T21:01:10.023 回答
0
  private void checkedListBox1_SelectedValueChanged(object sender, EventArgs e)
        {
            checkedListBox1.SetItemChecked(checkedListBox1.SelectedIndex, true);
        }

        private void checkedListBox1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            checkedListBox1.SetItemChecked(checkedListBox1.SelectedIndex, true);
        }

这肯定会做到,我也想要这个......

于 2017-10-23T03:54:47.967 回答