.NET WinForm ComboBox - 如何更改 DropDown 行为
我在 ComboBox 中有一个相当长的列表,并且我希望 DropDown 行为有所不同。
通常,当您单击箭头时,列表会展开,显示所有选项,从选定的选项开始。 所选选项上方列出的选项是隐藏的,但可以通过向上滚动看到。
我希望列表向上滚动一点,尽可能在列表中间显示所选选项。
我已经在启用滚动条的 FlowLayoutPanel 中看到了执行此操作的方法,但我对 DDL 没有运气。该列表超过 50 个项目,因此简单地显示整个列表是不切实际的。
I've got a fairly long list in a ComboBox, and I want the DropDown behavior to be different.
Normally, when you click the arrow, the list expands showing all options, starting with the selected option.
Options listed above the selected option are hidden, but can be seen by scrolling up.
I want the list to scroll up a bit, showing the selected option in the middle of the list, whenever possible.
I've seen ways to do this in a Scrollbar enabled FlowLayoutPanel, but I've had no luck with the DDL. The list is over 50 items long, so simply showing the whole list isn't practical.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为,你可以通过使用自己的绘图项方法来实现该效果。我的意思是,您将一个处理程序附加到 DrawItem 事件,然后在该处理程序中,您将获得您希望显示的所有所需数据。之后,将其绘制到屏幕上。
例如:
In my opinion, you can achieve the effect by using your own drawing item method. By this I mean, you attach an handler to the DrawItem event, then in the handler, you get all your required data that you wish to show. After that you draw it to the screen.
For example: