gpt4 book ai didi

带有只读/禁用项的 WinForms ListBox

转载 作者:行者123 更新时间:2023-12-04 18:53:36 25 4
gpt4 key购买 nike

有没有办法将 ListBox 中的某些项目设为只读/禁用,以便无法选择它们?或者是否有任何类似于 ListBox 的控件来提供此功能?

最佳答案

ListBox 不支持。你可以用 bolt 固定一些东西,你可以取消选择一个选定的项目。这是一个防止选择偶数项的愚蠢示例:

private void listBox1_SelectedIndexChanged(object sender, EventArgs e) {
for (int ix = listBox1.SelectedIndices.Count - 1; ix >= 0; ix--) {
if (listBox1.SelectedIndices[ix] % 2 != 0)
listBox1.SelectedIndices.Remove(listBox1.SelectedIndices[ix]);
}
}

但是闪烁非常明显,并且会扰乱键盘导航。您可以通过使用 CheckedListBox 获得更好的结果,您可以防止用户选中项目的框:
private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) {
if (e.Index % 2 != 0) e.NewValue = CheckState.Unchecked;
}

但是现在您不能覆盖绘图以使用户看起来很明显该项目是不可选择的。这里没有很好的解决方案,在框中不显示不应选择的项目要简单得多。

关于带有只读/禁用项的 WinForms ListBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2438168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com