【问题标题】:C# ListView Image/Icon margin/paddingC# ListView 图像/图标边距/填充
【发布时间】:2013-03-14 22:02:00
【问题描述】:

是否可以在ListView中重现下图中的内容,右侧的填充/边距图标。

http://img801.imageshack.us/img801/4043/listview.png

我的第一个问题在这里,所以我不能在这里发布图片。

基本上我需要将 ListView 图标移动得更正确,我正在复制文件/目录浏览器,因此目录中的失败需要在它们下方并且稍微像图片中的那样,我已经弄清楚了其他所有内容。

【问题讨论】:

  • 这是一个Web应用程序还是一个桌面应用程序,您使用的是Windows窗体还是asp.net Web窗体? Web 表单中有 ListView 类型,Windows 表单中有 ListView 类型,它们有很大的不同。

标签: c#-4.0 listview icons margin padding


【解决方案1】:

您应该使用TreeView 控件:
http://msdn.microsoft.com/en-us/library/1dtsdfkx.aspx

但是,如果您坚持要破解 ListView 以这种方式进行渲染,您只需要自己接管绘制每一行。您可以使用OwnerDraw 属性来执行此操作,但请注意这里有很多极端情况,因此您应该做大量阅读以了解人们在实施此操作时必须处理的内容:
http://msdn.microsoft.com/en-us/library/system.windows.forms.listview.ownerdraw.aspx

【讨论】:

  • 感谢您的回答,我不能使用TreeView,因为我不支持多选。