在 datagridview vb.NET 中分割单元格。这可能吗?

发布于 2024-12-04 17:58:15 字数 311 浏览 1 评论 0原文

我需要在 datagridview 控件 @ VB.NET 中向用户表示不同的 4 种(最多,可能 2 或 3 种)颜色。一个示例单元格是:


---------------
| Blue | Red  |
---------------    <<<- A Cell
| Gray | Blue |
---------------

因此,

我需要将单元格拆分为不同的大小或计数。我知道可以合并单元格,是否可以反向合并?或者有人对这个问题有任何想法吗?

先感谢您。

I need to represent different 4 (max, maybe 2 or 3) colors to the user in datagridview control @ VB.NET. An example cell would be:


---------------
| Blue | Red  |
---------------    <<<- A Cell
| Gray | Blue |
---------------

So,

i need to split a cell to different size or counts. I know merging cells is possible, is opposite-merge possible? Or anybody have any idea for this problem?

Thank you in advance.

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

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

发布评论

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

评论(1

女中豪杰 2024-12-11 17:58:15

我可以想到三种解决方案:


拥有额外的列和行,以便您可以将它们合并为您期望的任何模式。


处理 DataGridView.RowPrePaint 事件。记录行索引以便在以下事件中使用。

处理 DataGridView.CellPainting 事件。您可以从事件参数 (e) 获取列索引、单元格边界和图形处理程序。调用e.Graphics.FillRectange()


创建一个继承自System.Windows.Forms.DataGridViewCell 的自定义类。添加属性来定义单元格分割和颜色。在 Paint 事件中编写您的自定义绘画。使用这些单元格类型填充 DataGridView。

I can think of three solutions:


Have extra columns and rows so you can merge them into any pattern you'd expect.


Handle the DataGridView.RowPrePaint event. Record the row index for use in the following event.

Handle the DataGridView.CellPainting event. You can get the column index, cell bounds, and graphics handler from the event args (e). Call e.Graphics.FillRectange()


Create a custom class inheriting from System.Windows.Forms.DataGridViewCell. Add properties to define the cell splitting and colours. Write your custom painting in the Paint event. Populate the DataGridView with these cell types.

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