详细信息模式下的 Windows 窗体 ListView - 如何更改所有者绘制中的行高?

发布于 2024-08-18 20:45:42 字数 320 浏览 14 评论 0原文

我有一个处于详细信息模式的 Windows 窗体 ListView 控件。有多个列在起作用。我正在尝试使用所有者绘制将一个特别宽的列放置在其他列的“下方”。

所以,而不是这样:

COLUMN1  COLUMN2  COLUMN3  COLUMNNNNNNNNNNNNNNNNNNN4

我试图这样做:

COLUMN1  COLUMN2  COLUMN3
COLUMNNNNNNNNNNNNNNNNNNN4

我无法弄清楚如何放大项目的边界以适合房间来绘制下面的列。有什么想法吗?

I've got a Windows Forms ListView control in details mode. There are multiple columns at play. I'm trying to use owner draw to place a particularly wide column "below" the others.

So, instead of this:

COLUMN1  COLUMN2  COLUMN3  COLUMNNNNNNNNNNNNNNNNNNN4

I'm trying to do this:

COLUMN1  COLUMN2  COLUMN3
COLUMNNNNNNNNNNNNNNNNNNN4

I cannot figure out how to enlarge the bounds of the item to fit in the room to draw the column below. Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

痕至 2024-08-25 20:45:42

ListView 中的所有行必须具有相同的高度。通过将 Font 调大,然后在 DrawItem 事件处理程序中使用小字体,可以获得适合多行文本的高行。

如果这限制太多,那么您应该查看 DataGridView 或自定义的第 3 方组件。

All rows in a ListView have to be the same height. You can get a tall row that fits more than one line of text by making the Font large, then using a small font in the DrawItem event handler.

If this is too restrictive then you should look at DataGridView or a custom 3rd party component.

夏花。依旧 2024-08-25 20:45:42

ListView 不能做这样的事情。嗯...它可以,但仅限于 ObjectListView ,即使如此,它也不是简单的。有一个示例展示了如何执行类似的操作,但不完全是:

替代文字
(来源:sourceforge.net

尝试使用 Lee Paul Alexander 出色的Outlook 样式列表

替代文字

A ListView cannot do such a thing. Well... it can, but only with ObjectListView and even then it's not easy. There is a sample showing how to do something like that, but not quite:

alt text
(source: sourceforge.net)

Try using Lee Paul Alexander’s fantastic Outlook-style list.

alt text

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文