WPF LiveCharts 未显示。为什么?

问题描述 投票:0回答:1

我有一个 WPF 项目,我试图在充当封面的页面上显示图形。我以 YouTube 上的一个示例为指导,它们在设计时显示,但在运行时不显示。 我错过了什么或错了什么?所有初步陈述均已作出。

 <Grid>
     <StackPanel>
    <Label Content="Sections" x:Name="labelS" Margin="20,0,0,0" Style="{StaticResource Etiqueta}" RenderTransformOrigin="0.503,0.264" Foreground="LemonChiffon"  Height="35" Width="426"/>
    <lvc:PieChart x:Name="gSec"  LegendLocation="Bottom" Series="{Binding SeriesCollection}" Hoverable="True" InnerRadius="30" Margin="0,0,0,0" Height="171" Width="231">
        <lvc:PieChart.ChartLegend>
            <lvc:DefaultLegend BulletSize="15" TextBlock.FontSize="8" TextBlock.Foreground="White"/>
        </lvc:PieChart.ChartLegend>
        <lvc:PieChart.DataTooltip>
            <lvc:DefaultTooltip BulletSize="20"/>
        </lvc:PieChart.DataTooltip>
    </lvc:PieChart>
</StackPanel>
 </Grid>
using LiveCharts;
using LiveCharts.Defaults;
using LiveCharts.Wpf;
using System.Windows.Controls;
using SeriesCollection = LiveCharts.SeriesCollection;
    public PagePanel()
    {            
        InitializeComponent();

        SeriesCollection = new SeriesCollection();
        {
            new PieSeries
            {
                Title = "t1",
                Values = new ChartValues<ObservableValue> { new ObservableValue(37) },
                DataLabels = true
            };
            new PieSeries
            {
                Title = "t2",
                Values = new ChartValues<ObservableValue> { new ObservableValue(20) },
                DataLabels = true
            };
            new PieSeries
            {
                Title = "t3",
                Values = new ChartValues<ObservableValue> { new ObservableValue(8) },
                DataLabels = true
            };
            new PieSeries
            {
                Title = "t4",
                Values = new ChartValues<ObservableValue> { new ObservableValue(30) },
                DataLabels = true
            };

        };
        
        DataContext = this;            
    }

    public SeriesCollection SeriesCollection { get; set; } 
}

我希望图形显示在我的主页上。

c# wpf livecharts
1个回答
0
投票

SeriesCollection 初始化的代码不是有效的集合初始值设定项,因为您只是在代码块中创建了一些未使用的 PieSeries 对象。

它应该看起来像这样:

SeriesCollection = new SeriesCollection
{
    new PieSeries { ... },
    new PieSeries { ... },
    new PieSeries { ... },
    new PieSeries { ... },
};
© www.soinside.com 2019 - 2024. All rights reserved.