0

我获得了最新的 DGML架构并通过 xsd.exe 生成了一组 c# 类,但我看不到如何以编程方式将自定义属性添加到节点。

XML 看起来像:

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/vs/2009/dgml">
  <Nodes>
    <Node Id="_85" Label="MyNode" CustomProperty="XXX" />
  </Nodes>
  <Properties>
    <Property Id="CustomProperty" Label="YYY" Group="ZZZ" />
  </Properties>
</DirectedGraph>

如何将CustomProperty属性添加到Node?

4

1 回答 1

0

您可以绝对定义自定义属性,但它们是“元数据”,而不是您将在图表本身上看到的东西。它们包含有关属性的类型信息,这些信息会影响对这些值的响应方式。这是一个例子。如果您选择带有自定义优先级属性的链接,F4 属性窗口将显示有关该属性的元数据。

<DirectedGraph xmlns="http://schemas.microsoft.com/vs/2009/dgml">
  <Nodes>
    <Node Id="Banana" UseManualLocation="True" />
    <Node Id="Test" UseManualLocation="True" />
  </Nodes>
  <Links>
    <Link Source="Test" Target="Banana" Priority="10"/>
    <Link Source="Test" Target="Green" />
  </Links>
  <Properties>
    <Property Id="Bounds" DataType="System.Windows.Rect" />
    <Property Id="UseManualLocation" DataType="System.Boolean" />
    <Property Id="Priority" DataType="System.Double"  
              Label="Poobar" Group="Metrics" 
              Description="A fun new property"/>
  </Properties>
  <Styles>
    <Style TargetType="Link">
      <Setter Property="Weight" Expression="Priority * 3" />
    </Style>
  </Styles>
</DirectedGraph>
于 2019-07-26T20:38:45.053 回答