4

我无法使用 WPF,所以我在 Winform 中使用了 elementHost。

在我的项目中(使用 Graph# 绘制图形)我可以绘制顶点和边,但不能在边上放置标签。

代码 :

string[] vertices = new string[] { "A", "B", "C" };
var g = new BidirectionalGraph<object, IEdge<object>>();

g.AddVertexRange(vertices);

g.AddEdge(new Edge<object>(vertices[0], vertices[1]));
g.AddEdge(new Edge<object>(vertices[1], vertices[2]));
g.AddEdge(new Edge<object>(vertices[0], vertices[2]));

graphLayout.Graph = g;
4

1 回答 1

0

您可以创建颜色图例而不是标签,然后为边缘着色。

if (FirstCase
{
    g.AddVertex("A");
    Color edgeColor = Colors.Green;

    g.AddVerticesAndEdge(new MyEdge("A", "B")
    {
        EdgeColor = edgeColor
    });
}
if (SecondCase
{
    g.AddVertex("B");
    Color edgeColor = Colors.Red;

    g.AddVerticesAndEdge(new MyEdge("B", "C")
    {
        EdgeColor = edgeColor
    });
}
于 2015-10-25T10:49:03.270 回答