相关疑难解决方法(0)

更改Silverlight图表图例项目布局

我正在定制Silverlight Toolkit图表的布局.我有两个要求:

1)将图例区域移动到图表的底部(已解决).

2)改变图例中要彼此相邻显示的元素的布局,即.{legend 1},{legend 2},{legend 3},而不是默认的列格式.


1)使用ControlTemplate很容易解决(见下文).

2)如何更改图例项的布局?可以通过进一步自定义Chart的ControlTemplate来完成,还是Legend需要自己的ControlTemplate?

图表本身定义为:

<chartingToolkit:Chart Name="chartCompareMain" 
                       Template="{StaticResource ChartLayoutLegendBottom}">
        <chartingToolkit:Chart.Axes>
             <chartingToolkit:DateTimeAxis Orientation="X" 
                        AxisLabelStyle="{StaticResource ChartDateFormat}">
             </chartingToolkit:DateTimeAxis>
             <chartingToolkit:LinearAxis  Orientation="Y"/>
        </chartingToolkit:Chart.Axes>
</chartingToolkit:Chart>    
Run Code Online (Sandbox Code Playgroud)

用于移动图例项的ControlTemplate(基于默认模板)是:

<ControlTemplate x:Key="ChartLayoutLegendBottom" TargetType="chartingToolkit:Chart">
        <Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="*" />
                    <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <dataviz:Title Grid.Row="0" Content="{TemplateBinding Title}" Style="{TemplateBinding TitleStyle}" />
                <Grid Grid.Row="1" Margin="0,15,0,15">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                    </Grid.ColumnDefinitions>
                    <chartingprimitives:EdgePanel x:Name="ChartArea" Style="{TemplateBinding ChartAreaStyle}" Grid.Column="0" >
                        <Grid Canvas.ZIndex="-1" Style="{TemplateBinding PlotAreaStyle}" />
                        <Border Canvas.ZIndex="10" BorderBrush="#FF919191" BorderThickness="1" /> …
Run Code Online (Sandbox Code Playgroud)

silverlight charts toolkit legend

11
推荐指数
2
解决办法
1万
查看次数

标签 统计

charts ×1

legend ×1

silverlight ×1

toolkit ×1