我需要在datagridview control @ VB.NET中向用户表示不同的4种(最多,可能是2或3种)颜色。一个示例单元格是:
---------------
| Blue | Red |
--------------- <<<- A Cell
| Gray | Blue |
---------------
我需要将细胞分成不同的大小或数量。我知道合并单元是可能的,可能是反向合并吗?或者有人对这个问题有任何想法吗?
提前谢谢。
答案 0 :(得分:3)
我可以想到三个解决方案:
有额外的列和行,以便您可以将它们合并到您期望的任何模式中。
处理DataGridView.RowPrePaint
事件。记录行索引以便在以下事件中使用。
处理DataGridView.CellPainting
事件。您可以从事件args(e
)获取列索引,单元格边界和图形处理程序。致电e.Graphics.FillRectange()
创建一个继承自System.Windows.Forms.DataGridViewCell
的自定义类。添加属性以定义单元格拆分和颜色。在Paint事件中编写自定义绘画。使用这些单元格类型填充DataGridView。