2

伙计们!我使用列表视图(图标模式)来显示由图像和标签组成的项目。正如您在镜头中看到的那样,行高在 y 上是可变的,具体取决于标签长度。问题是我想要绘制完整的标签,但它们会自动缩小成两行: 所有过长的字符串都被截断了

奇怪的是,一旦你选择了一个项目,整个标签就会显示出来: 所选项目显示不截断 取消选择项目时也是如此,但是当另一个项目被选中时,只有那个会完全显示。在我的情况下,有没有办法(无需手动绘制文本)来避免截断?如果需要一些代码来回答这个问题,请不要犹豫。

问候,萨塔拉

4

1 回答 1

1

我猜这是一个设计选择:让事情看起来不那么混乱。例如,将您的桌面与所有标签完全显示...在我的情况下看起来会很乱。

但是,您可以通过自己绘制标签来解决此问题。查看自定义绘图,这是列表控件提供的一项服务。问题是它通常是全有或全无的方法,因此这可能需要您自己绘制所有内容:边框、图像、标签等。另一种选择是变得 hacky:子类化窗口并在 Windows 之后再次绘制标签响应几条消息(不幸的是,Windows 没有将绘画限制为WM_PAINT,这是过去遗留下来的优化......)

于 2012-12-28T10:51:10.430 回答