我想实现一个组合框(在下拉列表模式下),其中下拉列表中的项目高度为64,但下拉列表项目在正常高度显示。这里的用例是一个包含文件名的列表,旁边有一个图像缩略图。我希望普通显示器具有一个小缩略图的正常高度,但相关的下拉列表中的缩略图要大得多。
当我尝试修改项目高度时,整个组合框都设置为容纳它,而不仅仅是下拉列表(我完全合情合理)。
这可能吗?
感谢您的任何提示。
罗宾
答案 0 :(得分:1)
也许您可以使用OwnerDraw模式?此示例显示了一个带有自定义高度分隔符项的示例,但我猜您可以将相同的原则应用于组合框中的所有项目。
http://blogs.msdn.com/b/jfoscoding/archive/2005/08/26/456977.aspx
答案 1 :(得分:1)
我相信您需要绘制Combobox所有者并使用Measure事件。 Event传递MeasureItemEventArgs,其中包括正在绘制的项目的索引。
以下是Microsoft文档Combobox.Measure event
中的示例