【发布时间】:2015-07-16 05:22:11
【问题描述】:
我有一种情况,我试图用 Windows 窗体中 ADODB 记录集中的数据填充列表视图(或其他控件)。问题是大多数行会有几列,但有些行只有 1 列。我正在尝试创建一个 POS 解决方案,其中一些行可以是 cmets。
示例输出(为简洁起见):
第 1 行:[数量 1]、[项目 1]、[项目 1 描述]、[项目 1 价格]
第 2 行:[comment1]
第 3 行:[数量 2]、[项目 2]、[项目 2 描述]、[项目 2 价格]
第 4 行:[数量 3]、[项目 3]、[项目 3 描述]、[项目 3 价格]
第 5 行:[comment2]
我希望注释行跨越控件的整个宽度。 据我了解,列表视图不允许像这样的可变列宽。 vb.net windows 窗体中是否有允许这种格式的控件?或者有没有其他方法可以实现这种视觉输出?
【问题讨论】:
-
您是否尝试过从
ADO对象加载DataTable并将其作为DataSource分配给DataGridView控件?就列而言,大部分工作都是为您完成的。 -
也许 datagridview 控件更符合我的要求,尽管我不知道如何在运行时动态合并单元格或更改单元格宽度。我想显示发票的行,并根据该行是否为注释行动态更改每行的单元格宽度。我在每一行上都有一个布尔开关,以显示它是否是注释。如果开关为真,我想将除包含注释的单元格宽度之外的所有单元格宽度设置为零。这可能吗?
-
只是为了表明我正在积极寻找答案 :) 我遇到了这个问题:vbforums.com/… 一个重载的 cellPainting 事件似乎是正确的方向,但我无法让它工作.似乎对这种功能有足够的需求,以至于会有一些本机包含此功能的控件,但我找不到。
标签: vb.net listview datagridview