自定义Listview(VB.NET)

时间:2011-11-23 15:46:06

标签: vb.net listview controls

我正在尝试制作类似这样的列表视图:

enter image description here

编辑:列表视图有一个自定义标题,所选列以另一种颜色突出显示,列可以调整大小,可自定义滑块,图片中还可以看到其他任何内容。

使用VB.NET进行此类控制是否现实?如果是这样,你会建议在哪里开始?任何帮助都将非常感激。

2 个答案:

答案 0 :(得分:0)

您展示的图片看起来更像是DataGrid,而不是列表视图,如果您愿意花钱,可以使用很多第三方产品,例如ComponentArt http://www.componentart.com/

编辑答案:

只需使用DataGridView即可。我很确定所有元素都可以按照你想要的方式设置。

如果是网页,那么你可以使用html和css构建一个表。

答案 1 :(得分:0)

应该可能......但绝对不容易(至少对我而言)。

我正在自己做一个自定义列表视图(添加了一些功能和新属性),但没有自定义绘图的经验。我所知道的是,你必须为图片中的结果做一个完整的自定义绘图。 我尝试了一次自定义绘图,因为我想要交替的线条背景颜色,自定义网格线和颜色以及自定义高亮颜色但现在放弃了,因为我在线条中显示了复选框(它们的显示样式)的特征我在我的应用程序中使用默认样式。 由于采用了不同的方法(使用修改后的ListViewItemCollection触发自定义事件),我得到了行的交替背景,但仍希望有一天有自定义网格。

到目前为止我从未使用过DataGridView,因此我无法对此发表任何意见,但我认为应该可以扩展listview以执行您想要的操作(取决于所需的功能)。

一个好的起点应该是继承listview,将其设置为OwnerDraw并使用相关事件(OnDrawColumnHeader,OnDrawSubItem,OnDrawItem)。

您还可以查看“ObjectListView”,这是一个具有非常扩展的Listview的开源项目。我无法让它运行,因为我使用的是VB-Net Express。