我试图通过DataGridView中的行绘制线条。这个想法是完成甘特图。现在我可以绘制栏栏。但是当任务之前有另一个任务时,我需要画出连接它们的线。通过行在DataGridView中绘制线条
这就是我现在所在:
我需要的是绘制连接器,例如,“利亚6”和“利亚7”在椭圆
我试图通过DataGridView中的行绘制线条。这个想法是完成甘特图。现在我可以绘制栏栏。但是当任务之前有另一个任务时,我需要画出连接它们的线。通过行在DataGridView中绘制线条
这就是我现在所在:
我需要的是绘制连接器,例如,“利亚6”和“利亚7”在椭圆
老实说它看起来很棘手。请考虑使用CellPaining。但我认为实施你所需要的可能会很痛苦。
尝试RowPostPaint
事件,例如:
e.Graphics.FillRectangle(Brushes.Red, 20, e.RowBounds.Top + 6,
e.RowBounds.Width, CInt(e.RowBounds.Height/2));
阿门。问题在于RowBounds只是一行。 – Nane 2012-03-25 18:48:29
@Nane,你没有得到它,它为每一行渲染,所以如果你想绘制特定的行,所以你打电话if(e.RowIndex ==某事)e.Graphics ...否则就像我的代码没有条件 – 2012-03-25 20:09:16
你是怎么解决绘制甘特红/蓝条?什么阻止您使用相同的方法绘制连接器? – digEmAll 2012-03-25 17:52:52
@digEmAll。所有酒吧被绘制在一个独特的单元格中,覆盖OnCellPaint。红色意味着任务被延迟,黑色意味着准时。蓝条是任务,灰色是组,而第一行的黑色是所有项目的进步。问题是,当我想绘制一行一行,最后一行结束时,我只能绘制第一行的行,那就是我的绘图区域。 – Nane 2012-03-25 18:42:58