ObjectListView没有自动换行

Sup*_*625 3 c# ownerdrawn word-wrap objectlistview

我使用ObjectListView而不是标准的ListView是因为我想对列进行自动换行.

我在几个地方读到,为了启用自动换行,我唯一需要的是设置column.wordWrap为true.

我做到了这一点,但它不起作用.

我在这里错过了什么?

编辑: 我现在意识到我需要绘制我的列所有者.我发现这个页面告诉我该怎么做,但我不确定将它放在我的代码中的哪个位置.我也不太确定是否需要在委托中添加某些属性以允许自动换行(通过看起来opf它默认启用它).问题是,我尝试了我在这个页面中找到的东西,一字一句地复制它,我的列表看起来完全一样......

Gra*_*ian 8

如果你的意思是"自动换行",你希望不同的行有不同的高度,常见问题答案是正确的 - 它根本无法完成.

但是,如果你使每一行都显示两行或多行文本,那么,是的,ObjectListView可以自动换行.

它需要三个条件:

  1. 在要包装的列上设置WordWraptrue.你已经做到了.
  2. 确保ObjectListView绘制了所有者(设置OwnerDrawtrue - 这可以在表单设计器中完成).基础ListView不能自动换行,所以我们必须自己绘制单元格.
  3. 通过将RowHeight设置为32(或其他一些值),确保有空间查看包裹的行

这是演示中的数据选项卡.第一列WordWrap设置为true. 自动换行动