linegraph на wp7 - PullRequest
       5

linegraph на wp7

2 голосов
/ 14 июня 2011

Я использую amCharts и их SerialChart в сочетании с LineGraph.Я получил это работать следующим образом:

 <amq:SerialChart x:Name="_24HoursLineGraph" DataSource="{Binding Data}" CategoryValueMemberPath="Date"
                     AxisForeground="White"
                     PlotAreaBackground="Black"
                     GridStroke="DarkGray" Grid.Row="1" Margin="20">
        <amq:SerialChart.Graphs>
            <amq:LineGraph ValueMemberPath="Close" Title="Close" Brush="Blue" />

        </amq:SerialChart.Graphs> 
    </amq:SerialChart>

Код позади:

public ObservableCollection<Currency> Data { get { return _data; } }

    private ObservableCollection<Currency> _data = new ObservableCollection<Currency>(){};

void SetContext(Item[] itemArray)
{
    _data = new ObservableCollection<Item>();    
                foreach (var item in itemArray)
                {
                    _data.Add(item);
                }
                _data.OrderByDescending(i => i.Date);

                this.DataContext = this;
}

Я не понимаю, как я могу настроить таргетинг на текст данных линейного графа вместо установки текста данныхвсего стержня?У меня есть три графика в трех различных элементах сводки, и мне нужно установить их текстовые данные отдельно.Поэтому вместо этого я хочу сделать что-то вроде:

_24HoursLineGraph.DataContext = theDataContext;

Но это не работает.Я также пытался получить доступ к самому графу с помощью _24HoursLineGraph.Graphs [0] .DataContext, но это тоже не работает.

Есть предложения?

1 Ответ

2 голосов
/ 17 июня 2011

Быстрые диаграммы предназначены для простых сценариев с одним источником данных для нескольких графиков.Использование полностью отдельных источников данных для каждого графика не поддерживается в быстрых диаграммах.

В вашем случае вам необходимо объединить все источники данных в один, а затем установить ValueMemberPath на каждом графике на соответствующее имя свойства в ваших данных..

...