在gridview单元格之间画一条连线?

时间:2012-10-16 03:44:58

标签: c# wpf gridview

有谁知道如何在gridview中的单元格之间绘制连接线?我想连接每个月最低价的水果。我正在使用WPF和C#来构建它。

以下是我希望gridview显示的情况图片的链接:

enter image description here

P / s:我使用Paint绘制图像。抱歉,由于信誉低,我无法上传图片。

1 个答案:

答案 0 :(得分:0)

将这样的画布添加到您的xaml中,以便它满足您的gridview

<Canvas Width="300" Height="300" Background="Beige"  Opacity="0.5" Name="canvas1"/>

然后在您的代码中,您可以使用LinePath类来绘制路径。我的代码使用的是Line类:

private void drawGridLines()
{
    Line lastline = new Line();
    lastLine.X2 = 0;
    lastLine.Y2 = 0;

    bool first = true;


    for(int i=0; i<5; i++) // iterate over your gridview rows
    {
        Line newline = new Line();

        newline.X1 = lastline.X2;
        newline.Y1 = lastline.Y2;

        newline.X2 = 50; // calculate X position of your minimum cell
        newline.Y2 = 50; // calculate Y position of your minimum cell 


        if(!first) { // first minimum cell should't be drawn, it is just the start point for next line

           drawLine(newline);
        } else {
           first = false;
        }

        lastline = newline;
    }
}

public void drawLine(Line line)
{
    line.Stroke = System.Windows.Media.Brushes.Red;
    line.StrokeThickness = 1;
    canvas1.Children.Add(line);
}