【问题标题】:In a winforms listbox, is there a way to select multiple items in code with only one redraw of the control?在 winforms 列表框中,有没有办法在代码中选择多个项目,只重绘一次控件?
【发布时间】:2011-07-06 22:47:51
【问题描述】:

我有一个可能包含数千个项目的列表框。我需要一种方法来选择只有一个控件重绘的子集。现在我正在使用 SetSelected 方法,它会强制控件在选择一项后重新绘制自身。

我可以使用反射来编辑选定项列表吗?或者我可以将控件设置为不以某种方式重绘自身,选择项目,然后再次打开重绘?

还有人有其他想法吗?

-艾萨克

【问题讨论】:

  • 你到底为什么要把数千个项目放在一个列表框中?您的用户对 50 号之前的内容完全失去了兴趣。
  • 这些项目是这些奇怪的等长字母数字代码,它们已排序但可能不连续。他们选择要在搜索过滤器中使用的那些。
  • 如何说服用户选择 943 号商品?
  • 如何在电话簿中找到电话号码?

标签: winforms


【解决方案1】:

为此目的使用 ListBox.BeginUpdate() / ListBox.EndUpdate 括号。

【讨论】:

  • 这就是我想要的,但它并没有加速这个过程。选择一项似乎仍然需要很长时间。
猜你喜欢
  • 2019-06-11
  • 1970-01-01
  • 1970-01-01
  • 2020-10-16
  • 2020-06-18
  • 2015-10-02
  • 2015-12-18
  • 2022-11-17
  • 2012-07-30
相关资源
最近更新 更多