在System.Windows.Forms.DataVisualization.Charting.chart wpf中的条形图内显示值

在System.Windows.Forms.DataVisualization.Charting.chart wpf中的条形图内显示值,wpf,Wpf,我有一个System.Windows.Forms.DataVisualization.Charting.chart,我想在图表的条形图中显示轴值。我可以使用列系列数据点在悬停状态下设置值 以下是图表代码: <chartingToolkit:Chart Style="{StaticResource ChartStyle1}" HorizontalAlignment="Left" ScrollViewer.HorizontalScrollBarVisibility="Visible" Scr

我有一个System.Windows.Forms.DataVisualization.Charting.chart,我想在图表的条形图中显示轴值。我可以使用列系列数据点在悬停状态下设置值

以下是图表代码:

<chartingToolkit:Chart Style="{StaticResource ChartStyle1}"  HorizontalAlignment="Left" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.CanContentScroll="True" Name="barChart">
       <chartingToolkit:ColumnSeries LegendItemStyle="{StaticResource ResourceKey=LegendItemStyle}" DataPointStyle="{StaticResource PointStyle3}" Title="Total Leads" Name="totalLeadColumn"  DependentValuePath="Value" IndependentValuePath="Key"  ItemsSource="{Binding}" />
       <chartingToolkit:Chart.Axes>
             <chartingToolkit:LinearAxis Width="50" ShowGridLines="True" Orientation="Y" FontStyle="Normal" TitleStyle="{StaticResource TitleStyle}"  Title="Number of Leads" Margin="0,0,5,0" Interval="1" Minimum="0" Maximum="20"/>
             <chartingToolkit:CategoryAxis Height="60" Orientation="X" Title="Estimators" FontStyle="Normal" Margin="0,2,5,0" TitleStyle="{StaticResource TitleStyle}"  >
                  <chartingToolkit:CategoryAxis.AxisLabelStyle>
                          <Style TargetType="chartingToolkit:AxisLabel">
                               <Setter Property="Template">
                                   <Setter.Value>
                                       <ControlTemplate TargetType="chartingToolkit:AxisLabel">
                                            <TextBlock Text="{TemplateBinding FormattedContent}"  TextAlignment="Left"  TextWrapping="Wrap"   Width="50"  />
                                        </ControlTemplate>
                                    </Setter.Value>
                               </Setter>
                          </Style>
                 </chartingToolkit:CategoryAxis.AxisLabelStyle>
         </chartingToolkit:CategoryAxis>
     </chartingToolkit:Chart.Axes>
</chartingToolkit:Chart>

风格:

<Style x:Key="LegendItemStyle" TargetType="chartingToolkit:LegendItem">
      <Setter Property="IsTabStop" Value="False" />
      <Setter Property="Template">
          <Setter.Value>
              <ControlTemplate TargetType="chartingToolkit:LegendItem">
                 <StackPanel Orientation="Horizontal">
                      <Rectangle Width="15" Height="15" Fill="{Binding Background}" Stroke="{Binding BorderBrush}" StrokeThickness="1" Margin="0,0,3,0" />
                      <visualizationToolkit:Title Content="{TemplateBinding Content}" />
                 </StackPanel>
              </ControlTemplate>
          </Setter.Value>
      </Setter>
</Style>



有人能告诉我应该怎么做才能在条形图中显示值吗?

好的,我在这里找到了解决方案

需要如下设置数据点样式

<Style x:Key="ColumDataPointStyle" TargetType="chartingToolkit:ColumnDataPoint">
            <Setter Property="DependentValueStringFormat"
                    Value=" {0:N0}" />
            <Setter Property="Background">
                <Setter.Value>
                    <LinearGradientBrush>
                        <GradientStop Color="#FFB8C0AC" Offset="0"/>
                        <GradientStop Color="#FF5F7143" Offset="1"/>
                    </LinearGradientBrush>
                </Setter.Value>
            </Setter>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="chartingToolkit:ColumnDataPoint">
                        <Grid>
                            <Rectangle Fill="{TemplateBinding Background}" Stroke="Black"/>
                            <Grid Margin="0,-20,0,0" HorizontalAlignment="Center" VerticalAlignment="Top">
                                <TextBlock Text="{TemplateBinding FormattedDependentValue}" Margin="2"/>
                            </Grid>
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

好的,我在这里找到了解决方案

需要如下设置数据点样式

<Style x:Key="ColumDataPointStyle" TargetType="chartingToolkit:ColumnDataPoint">
            <Setter Property="DependentValueStringFormat"
                    Value=" {0:N0}" />
            <Setter Property="Background">
                <Setter.Value>
                    <LinearGradientBrush>
                        <GradientStop Color="#FFB8C0AC" Offset="0"/>
                        <GradientStop Color="#FF5F7143" Offset="1"/>
                    </LinearGradientBrush>
                </Setter.Value>
            </Setter>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="chartingToolkit:ColumnDataPoint">
                        <Grid>
                            <Rectangle Fill="{TemplateBinding Background}" Stroke="Black"/>
                            <Grid Margin="0,-20,0,0" HorizontalAlignment="Center" VerticalAlignment="Top">
                                <TextBlock Text="{TemplateBinding FormattedDependentValue}" Margin="2"/>
                            </Grid>
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>