如何在 Soley Studio 的图形视图中使用图像而不是形状作为节点?

How can I use an image instead of a shape for a node in graph view in Soley Studio?

我正在 Soley Studio 中设置图表视图模板。在一些预安装的解决方案中,我看到图形视图中的节点已使用图标或图形而不是圆形、矩形等可视化。

我想为节点 class 定义我的属性,使其显示齿轮图标或类似的东西。我必须使用哪个 <property>

我从另一个解决方案中复制了一个,但它没有改变任何东西:

<Style DataSource=".ProdFunction" VisualTarget=”Node”>
<!-- View Properties --> 
<Properties>
<Property Name="StyleName" Value="ShapeOrImageNodeStyle" />
<Property Name="Image">
<Value IsReference="true">icon</Value>
</Property> 
<Property Name="ColorizeImage" Value = "false" />
<Property Name="Width" Value="60" />
<Property Name="Height" Value="60" /> 
</Properties>
</Style>

我想使用 <Property Name="Image"> <Value IsReference="true">icon</Value></Property>。但是什么都没有改变。如何引用我想要的“图标”?将它添加到图像文件夹没有帮助。

对于 <Property Name="Image"> <Value IsReference="true">icon</Value></Property>,您指的是节点 class ProdFunction 的属性 icon。此属性的值必须是您要使用的图像的路径。 例如images\gearicon.png(您项目中的路径就足够了)

如果您想为一个 class 的每个实例显示不同的 images/icons,这种方法非常有用。 对于您的情况,我建议您简单地为整个节点定义一个图像文件 class。那么你也不需要为你定义一个额外的属性ProdFunction class.

您的图表视图模板样式最终可能如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<View Provider="Soley.Framework.AddIns.GraphDataViewProvider.GraphDataDisplayBinding">
      <References>
        <Reference Source="DataPresentation::ViewTemplates/Graph.slvt"/>
      </References>

    <Styles>
      <Style DataSource=".ProdFunction" VisualTarget=”Node”>

       <Properties>
         <Property Name="StyleName" Value="ShapeOrImageNodeStyle" />

         <Property Name="Image">
           <Value>images\gearicon.png</Value>
         </Property> 

         <Property Name="ColorizeImage" Value = "false" />

         <Property Name="Width" Value="60" />
         <Property Name="Height" Value="60" /> 
      </Properties>  

    </Style>
   </Styles>
</View>

这里还有一个包含 Soley Studio 中可用视图属性的列表:Help Center - View Templates