对,我玩了一场,对 SDK 进行了很好的挖掘,有点谷歌,这是我能想到的最好的。
我知道如何将文本放置在图表上的任意位置,但仅限于静态文本,例如我不知道如何将文本动态绑定到任何东西 - 我怀疑这更多地与 CRM 而非图表有关,我找不到太多CRM 和图表的文档。
所以我发现TextAnnotation可以让你在任何你喜欢的地方放置文本。这包含在Annotations
集合中。
例如:
<Chart>
...
<Annotations>
<TextAnnotation Text="This is an annotation" Name="TextAnnotation1" X="20" Y="50">
</TextAnnotation>
</Annotations>
...
</Chart>
重要的是要注意 的位置TextAnnotation
是相对的,例如注释将出现在图表左侧宽度的 20% 处。0,0 是左上角。MSDN 有更多关于定位的细节。
所以我可以创建一个这样的图表:
你好世界!是注释。
使用这个 xml:
<Chart Palette="None" PaletteCustomColors="55,118,193; 197,56,52; 149,189,66; 117,82,160; 49,171,204; 255,136,35; 97,142,206; 209,98,96; 168,203,104; 142,116,178; 93,186,215; 255,155,83">
<Series>
<Series ShadowOffset="0" IsValueShownAsLabel="True" Font="{0}, 9.5px" LabelForeColor="59, 59, 59" CustomProperties="PieLabelStyle=Inside, PieDrawingStyle=Default" ChartType="pie">
<SmartLabelStyle Enabled="True" />
</Series>
</Series>
<ChartAreas>
<ChartArea>
<Area3DStyle Enable3D="false" />
</ChartArea>
</ChartAreas>
<Legends>
<Legend Alignment="Center" LegendStyle="Table" Docking="right" IsEquallySpacedItems="True" Font="{0}, 11px" ShadowColor="0, 0, 0, 0" ForeColor="59, 59, 59" />
</Legends>
<Titles>
<Title Alignment="TopLeft" DockingOffset="-3" Font="{0}, 13px" ForeColor="0, 0, 0"></Title>
</Titles>
<Annotations>
<TextAnnotation Text="HELLO WORLD!" Font="Stencil, 15.75pt, style=Bold, Italic, GdiCharSet=0" Name="TextAnnotation1" X="20" Y="50" ForeColor="Orange">
</TextAnnotation>
</Annotations>
</Chart>
如果这不能满足您的要求,我建议您查看 SSRS 报告或其他一些 IFramed 到仪表板的自定义部分。