winforms 是否对选中项禁用CheckedListBox自动滚动?

flseospp  于 2022-11-16  发布在  其他
关注(0)|答案(2)|浏览(163)

情况:我有一个CheckedListBox,它启用了水平滚动条,并将CheckOnClick设置为true。CheckListBox的大小可以显示两列项。
问题:当用户单击第二列中的某个项目以将其选中或取消选中时,水平滚动条会自动移动整行,使其位于第一列中。
问:如何禁用CheckedListBox的自动移位?我看了一下属性,但似乎找不到一个可以禁用它的属性,答案是继承CheckedListBox并重写方法吗?
谢谢你的帮助!

wkyowqbh

wkyowqbh1#

如果你总是想回到左上角的项目(一直向左滚动),只要在SelectedIndexChanged上以编程方式选择项目[0]...这仍然会触发“检查”,并实际执行“检查时关闭”,但会返回到列表中的第一个项目...
就像这样:

private void lst_Servers_SelectedIndexChanged(object sender, EventArgs e)
    {
        this.lst_Servers.SelectedIndex = 0;
    }
1tu0hz3e

1tu0hz3e2#

问题是:当你调整表格大小时,你必须非常小心,确保最右边的列完全在可见区域内,否则如果你编辑该列中的单元格,表格将向左滚动。

相关问题