在WPFToolkit.Chart C#中更改Lineseries厚度

时间:2015-05-15 20:20:21

标签: wpf charts code-behind lineseries

我试图在一个动态创建的系列中更改线条粗细,我需要将线条更粗。

下面,按照代码将创建的系列绑定到图表组件上。它运行正常,但我尝试在此代码中调整this并且我没有成功。

请帮助,谢谢。

Style style = new Style(typeof(LineDataPoint));
style.Setters.Add(new Setter(LineDataPoint.OpacityProperty, (double)(0.0)));
style.Setters.Add(new Setter(LineDataPoint.BackgroundProperty, dadosSerie.ColorSerie));

LineSeries lineSerie = new LineSeries()
{
    Title = dadosSerie.SerieTitle,
    IndependentValueBinding = new Binding("Key"),
    DependentValueBinding = new Binding("Value"),
    DependentRangeAxis = dadosSerie.EixoY,
    DataPointStyle = style,
    ItemsSource = dadosSerie.DataSerie,
};

chtGraficos.Series.Add(lineSerie);

1 个答案:

答案 0 :(得分:0)

您是否尝试过为系列折线添加样式? 它接缝LineDataPoint的样式实际上是针对系列中的每个点。

以下是完全基于代码隐藏创建的图表的工作示例。您只需创建一个名为MainWindow的窗口,并将项目的引用添加到System.Windows.Controls.DataVisualization.Toolkit:

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

        var valueList = new Dictionary<string, int>();
        valueList.Add("Developer", 60);
        valueList.Add("Misc", 20);
        valueList.Add("Project Manager", 40);

        var style = new Style(typeof(Polyline));
        style.Setters.Add(new Setter(Polyline.StrokeThicknessProperty, 10d));

        var series = new LineSeries
        {
            PolylineStyle = style,
            ItemsSource = valueList,
            DependentValuePath = "Value",
            IndependentValuePath = "Key",
        };

        var lineChart = new Chart { Height = 254 };
        lineChart.Series.Add(series);

        var mainGrid = new Grid();
        mainGrid.Children.Add(lineChart);

        this.Content = mainGrid;
    }
}