问题标签 [graphx-net]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
970 浏览

c# - 使用数据库中的数据在 Windows 窗体上构建有向图

我有一个带有数据的对象,每个对象都连接到其他对象。(如 object1->object2、object2->object3、object1->object3)。例如由两个类表示的对象和连接:

例如,以这种方式存储的数据:

我在我的解决方案中生成了一个DGML(有向图标记语言)文件,其中包含 Visual Studio DGML 查看器的信息,以构建
我需要通过表单向用户显示其内容的图形。我正在为我的项目使用 Windows 窗体。但是没有VS DGML Viewer这样的控件。
所以我需要另一个想法如何自动构建有向图,因为我无法对数据进行排序以获得使用 System.Graphics 制作的正确外观的图。我怎样才能实现目标?

解决方案

我使用GraphX for .NET 库来实现我的目标。该库允许基于具有自动化可视化的数据构建不同的图表。但是对于需要使用ElementHost控件在 Windows 窗体内托管 WPF 控件的 Windows 窗体。

对于构建图,我使用了以下代码:

0 投票
1 回答
337 浏览

c# - GraphX For .Net 从一个 DataVertex 到另一个 DataVertex 的两个 DataEdge

我正在使用 GraphX for .Net 库根据我的数据构建图形。我有关系:obj1->obj2(type1),obj2->obj3(type1),obj1->obj2(type2)(type1和type2是一种线,连接两个对象)。我DataVertex这样添加:

然后我添加DataEdges

但是当生成图形时(我正在使用BidirectionalGraph),我只看到 obj1 和 obj2 之间的一个关系。我应该在代码中添加什么以查看生成图中的两种关系?我需要查看关系和标签,因为它们代表两个物理对象之间的电缆。我怀疑这两种关系只是相互重叠。
如果我设置allowParallelEdgesfalse,我只看到第一个关系,如果true那么只有第二个关系。

0 投票
1 回答
170 浏览

c# - C# GraphX 在点击时高亮显示顶点

我正在使用GraphX for .NET,并且我试图在用户单击它时突出显示一个顶点。

我报名参加了这个VertexSelected活动:

但在 UI 中什么也没发生。所以我尝试添加多个选项:

在我添加的构造函数中:

我还注册了该Loaded活动并添加了以下代码:

然后我将该行添加SetVerticesHighlight(true, GraphControlType.VertexAndEdge)VertexSelected事件中,以防万一。

但是什么也没发生。

我正在查看源代码,但我找不到其他任何东西。