Мне удалось создать все другие диаграммы в моем приложении без создания элементов представления в viewmodel, но эта проблема доставляет мне проблемы.
Я создаю список списка объектов в viewmodel и передаю его как текстовый текст для usercontrol, содержащий столбчатую диаграмму с накоплением.
CartessianChart.Series - это SeriesCollection, которая является коллекцией, но не имеет ItemsSource или эквивалентного свойства.
Я пытался использовать ItemsControl и различные виды шаблонов, но не могу найти работающее решение.
Что я хочу:
<lvc:CartesianChart>
<lvc:CartesianChart.Series>
Create this element below for every object in list
<lvc:StackedColumnSeries Values="{Binding }"
Configuration="{x:Static mappers:mapper}"/>
</lvc:CartesianChart.Series>
</lvc:CartesianChart>
Как я сейчас это делаю:
VM.cs:
Series = new SeriesCollection();
foreach (ChartValues<object>objects in ListOfDataIwouldLikeToBindDirectly)
{
Series.Add(new StackedColumnSeries(sameStaticMapper)
{
Values = objects
});
}
View.xaml:
<lvc:CartesianChart Series="{Binding Series}"/>
Код выглядит как беспорядок, и обновление связанных данных становится трудным, когда я должен сделать это следующим образом.
Спасибо!