情况:我有一个CheckedListBox,它启用了水平滚动条,并将CheckOnClick设置为true。CheckListBox的大小可以显示两列项。问题:当用户单击第二列中的某个项目以将其选中或取消选中时,水平滚动条会自动移动整行,使其位于第一列中。问:如何禁用CheckedListBox的自动移位?我看了一下属性,但似乎找不到一个可以禁用它的属性,答案是继承CheckedListBox并重写方法吗?谢谢你的帮助!
wkyowqbh1#
如果你总是想回到左上角的项目(一直向左滚动),只要在SelectedIndexChanged上以编程方式选择项目[0]...这仍然会触发“检查”,并实际执行“检查时关闭”,但会返回到列表中的第一个项目...就像这样:
private void lst_Servers_SelectedIndexChanged(object sender, EventArgs e) { this.lst_Servers.SelectedIndex = 0; }
1tu0hz3e2#
问题是:当你调整表格大小时,你必须非常小心,确保最右边的列完全在可见区域内,否则如果你编辑该列中的单元格,表格将向左滚动。
2条答案
按热度按时间wkyowqbh1#
如果你总是想回到左上角的项目(一直向左滚动),只要在SelectedIndexChanged上以编程方式选择项目[0]...这仍然会触发“检查”,并实际执行“检查时关闭”,但会返回到列表中的第一个项目...
就像这样:
1tu0hz3e2#
问题是:当你调整表格大小时,你必须非常小心,确保最右边的列完全在可见区域内,否则如果你编辑该列中的单元格,表格将向左滚动。