所以我刚开始使用LiveCharts,我浏览了文档并尝试构建我的第一个项目。 我创建了一个控件并将Series属性绑定到一个值,但是在实际控件上没有显示任何内容,为什么呢?我错过了什么?如何解决这个问题?什么都没有出现这一事实背后的逻辑是什么?
XAML
<Grid>
<wpf:CartesianChart Series="{Binding observableValues}" />
</Grid>
CS
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DataContext = this;
var doubleValues = new ChartValues<double> { 1, 2, 3 };
var intValues = new ChartValues<int> { 1, 2, 3 };
//the observable value class is really helpful, it notifies the chart to update
//every time the ObservableValue.Value property changes
var observableValues = new ChartValues<LiveCharts.Defaults.ObservableValue>
{
new LiveCharts.Defaults.ObservableValue(1), //initializes Value property as 1
new LiveCharts.Defaults.ObservableValue(2),
new LiveCharts.Defaults.ObservableValue(3)
};
}
}
答案 0 :(得分:0)
您不绑定任何东西到笛卡尔图表。您应该添加observableValues作为MainWindow的属性。
public partial class MainWindow : Window
{
public ChartValues<LiveCharts.Defaults.ObservableValue> observableValues
{
get;
set;
}
public MainWindow()
{
InitializeComponent();
DataContext = this;
var doubleValues = new ChartValues<double> { 1, 2, 3 };
var intValues = new ChartValues<int> { 1, 2, 3 };
//note that i'm setting the property and i'm not using 'var' keyword
observableValues = new ChartValues<LiveCharts.Defaults.ObservableValue>
{
new LiveCharts.Defaults.ObservableValue(1), //initializes Value property as 1
new LiveCharts.Defaults.ObservableValue(2),
new LiveCharts.Defaults.ObservableValue(3)
};
}
}
如果您观看“输出窗口”,将会看到绑定错误:
System.Windows.Data Error: 40 : BindingExpression path error ....