由于缺乏有关 XML 主题部分的信息,使用 MSchart 控件有些困难。
我正在以编程方式和动态创建图表,然后使用 XML 主题文件向其中添加主题。
我不知道会有多少系列,但我正在尝试为 StackedColumnBar 中每一列的总量添加一个系列。
因此,我在 foreach 循环中根据数据创建每个系列,然后将 Total 系列添加为气泡图类型。
现在我必须对 Total 系列应用不同的系列主题,并让所有其他系列具有相同的主题。
我尝试在图表和主题文件中将系列命名为“Total”。真正的问题是Template ="All" 属性,因为它没有在任何地方记录,所以我不知道它是如何真正工作的以及它是如何应用的。
主题示例:
<Chart BackColor="White"
BorderWidth="2"
Palette = "None"
PaletteCustomColors="#F29E39; #007463; #E76E34; #A4A4A4; #94BBA3;"
BorderlineDashStyle="Solid"
AntiAliasing="All">
<Series>
<Series Name="Total"
BorderWidth="0"
LabelForeColor="#FF000000"
LabelFormat="C"
IsVisibleInLegend="false"
IsValueShownAsLabel="true" >
</Series>
<Series _Template_="All"
BorderWidth="0"
LabelForeColor="#AAFFFFFF"
LabelFormat="C"
CustomProperties="PointWidth=0.9, DrawingStyle=LightToDark"
IsValueShownAsLabel="false" >
</Series>
</Series>
<ChartAreas>
<ChartArea Name="Default"
_Template_="All"
BorderWidth="0">
<AxisY IsInterlaced="true"
InterlacedColor="#E8E7DC">
<MajorGrid Enabled="false" />
</AxisY>
<AxisX>
<MajorGrid Enabled="false" />
</AxisX>
</ChartArea>
</ChartAreas>
<Legends>
<Legend _Template_="All"
Alignment="Center"
LegendItemOrder="ReversedSeriesOrder"
Docking="Bottom"/>
</Legends>
</Chart>