我有一个 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; }
}
我希望图形显示在我的主页上。
SeriesCollection 初始化的代码不是有效的集合初始值设定项,因为您只是在代码块中创建了一些未使用的 PieSeries 对象。
它应该看起来像这样:
SeriesCollection = new SeriesCollection
{
new PieSeries { ... },
new PieSeries { ... },
new PieSeries { ... },
new PieSeries { ... },
};