Почему в моем графике LiveCharts нет значений? - PullRequest
0 голосов
/ 28 июня 2018

Итак, я только начал использовать 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)
            };
        }
    }

1 Ответ

0 голосов
/ 28 июня 2018

Вы ничего не привязываете к декартовой диаграмме. Вы должны добавить 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 ....
...