2016-04-24 45 views
1

我已经WPFToolkit图,它有几个供LineSeries:如何将WPFToolkit中的DataPointStyle从圆形改为正方形,三角形等等?

enter image description here

如何在lineserias DataPointStyle改变从圆到方波,三角...等?

+0

那你试试?有没有文件?你在Google上搜索什么? –

+0

当你创建你的'DataPointStyle'时,你必须在样式的'Template'属性中定义你想要的形状。 – jsanalytics

+0

如果可以,请给我发送代码示例 –

回答

1

这是一些示例XAML创建DataPointStyle。我也创造了一些其他的附加风格只是这样的结果看起来是一致的:

<Window 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:local="clr-namespace:WpfApplication216" 
    xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit" 
    xmlns:visualizationToolkit="clr-namespace:System.Windows.Controls.DataVisualization;assembly=System.Windows.Controls.DataVisualization.Toolkit" 
    xmlns:Primitives="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit" 
    x:Class="WpfApplication216.MainWindow" 
    mc:Ignorable="d" 
    Title="MainWindow" Height="350" Width="525"> 
<Window.Resources> 
    <PointCollection x:Key="PCol1">1,10 2,30 3,20 4,40</PointCollection> 
    <PointCollection x:Key="PCol2">1,40 2,20 3,30 4,10</PointCollection> 

    <Style x:Key="DataPointStyle1" TargetType="{x:Type chartingToolkit:LineDataPoint}"> 
     <Setter Property="Background" Value="LightBlue"/> 
     <Setter Property="Width" Value="32"></Setter> 
     <Setter Property="Height" Value="32"></Setter> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="chartingToolkit:LineDataPoint"> 
        <Ellipse Fill="LightBlue" Stroke="DarkBlue" StrokeThickness="3"/> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
    <Style x:Key="DataPointStyle2" TargetType="{x:Type chartingToolkit:LineDataPoint}"> 
     <Setter Property="Background" Value="LightGreen"/> 
     <Setter Property="Width" Value="16"></Setter> 
     <Setter Property="Height" Value="16"></Setter> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="chartingToolkit:LineDataPoint"> 
        <Rectangle Fill="LightGreen" Stroke="DarkGreen" StrokeThickness="3"/> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

    <Style x:Key="PolylineStyle1" TargetType="{x:Type Polyline}"> 
     <Setter Property="StrokeThickness" Value="1"/> 
     <Setter Property="Stroke" Value="Blue"></Setter> 
    </Style> 
    <Style x:Key="PolylineStyle2" TargetType="{x:Type Polyline}"> 
     <Setter Property="StrokeThickness" Value="2"/> 
     <Setter Property="Stroke" Value="Green"></Setter> 
    </Style> 

    <Style x:Key="LineSeriesStyle1" TargetType="{x:Type chartingToolkit:LineSeries}" > 
     <Setter Property="IsTabStop" Value="False"/> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type chartingToolkit:LineSeries}"> 
        <Canvas x:Name="PlotArea"> 
         <Polyline Points="{TemplateBinding Points}" Style="{DynamicResource PolylineStyle1}" /> 
        </Canvas> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
    <Style x:Key="LineSeriesStyle2" TargetType="{x:Type chartingToolkit:LineSeries}" > 
     <Setter Property="IsTabStop" Value="False"/> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type chartingToolkit:LineSeries}"> 
        <Canvas x:Name="PlotArea"> 
         <Polyline Points="{TemplateBinding Points}" Style="{DynamicResource PolylineStyle2}" /> 
        </Canvas> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

</Window.Resources> 

<Grid> 

    <chartingToolkit:Chart Margin="0"> 
     <chartingToolkit:LineSeries DataPointStyle="{StaticResource DataPointStyle1}" Style="{StaticResource LineSeriesStyle1}" DependentValuePath="Y" IndependentValuePath="X" ItemsSource="{StaticResource PCol1}"/> 
     <chartingToolkit:LineSeries DataPointStyle="{StaticResource DataPointStyle2}" Style="{StaticResource LineSeriesStyle2}" DependentValuePath="Y" IndependentValuePath="X" ItemsSource="{StaticResource PCol2}"/> 
    </chartingToolkit:Chart> 

</Grid> 

enter image description here