wpf - Problem with binding Stacked colums series chart to Series -
i have big problem binding stacked column series chart.
i have public observablecollection series property in viewmodel , try many ways still not working.
this code viewmodel prepare series: private void drawchart() { this.series.clear();
var datavalues = new list<list<simpledatavalue>>(); int wartoscniezalezna = 1; (int = 0; < 2; i++) { datavalues.add(new list<simpledatavalue>()); } foreach (var item in mycollection) { var param = someparam; datavalues[0].add(new simpledatavalue { independentvalue = "czujnik " + wartoscniezalezna, dependentvalue = 100 }); //czerwone datavalues[1].add(new simpledatavalue { independentvalue = "" + wartoscniezalezna, dependentvalue = 200 }); wartoscniezalezna++; } var stackedseries = activator.createinstance(typeof(stackedcolumnseries)) definitionseries; int itemnr=0; foreach (var item in datavalues) { var definicja = new seriesdefinition(); if(itemnr==0) definicja.title = "stan 1"; else definicja.title = "stan 2"; definicja.dependentvaluepath = "dependentvalue"; definicja.independentvaluepath = "independentvalue"; definicja.tooltip = "asdas"; definicja.itemssource = item; stackedseries.seriesdefinitions.add(definicja); itemnr++; } series.add(stackedseries); }
i cant bind to:
<charting:chart x:name="mychart" padding="10,10,10,10"> <charting:chart.series> <charting:stackedcolumnseries> <charting:seriesdefinition itemssource="{binding series}" dependentvaluepath="dependentvalue" independentvaluepath="independentvalue"> </charting:seriesdefinition> </charting:stackedcolumnseries> </charting:chart.series> </charting:chart>
i trying seriesdefinitions collection , others. grateful help.
i hope i've answered question there
anyway post second part of answer here:
mainwindow.xaml:
<charting:chart x:name="mychart" padding="10,10,10,10"> <charting:chart.series> <charting:stackedcolumnseries> <charting:seriesdefinition title="stan 1" itemssource="{binding firstcollection}" dependentvaluepath="dependentvalue" independentvaluepath="independentvalue" /> <charting:seriesdefinition title="stan 2" itemssource="{binding secondcollection}" dependentvaluepath="dependentvalue" independentvaluepath="independentvalue" /> </charting:stackedcolumnseries> </charting:chart.series> </charting:chart>
mainwindow.xaml.cs
public partial class mainpage : usercontrol { public mainpage() { initializecomponent(); this.mychart.datacontext = new chartmodel { firstcollection = enumerable.range(1, 10).select(i => new simpledatavalue { independentvalue = "czujnik " + i, dependentvalue = 100 }).tolist(), secondcollection = enumerable.range(1, 10).select(i => new simpledatavalue { independentvalue = "" + i, dependentvalue = 200 }).tolist() }; } } public class simpledatavalue { public string independentvalue { get; set; } public int dependentvalue { get; set; } } public class chartmodel { public list<simpledatavalue> firstcollection { get; set; } public list<simpledatavalue> secondcollection { get; set; } }
Comments
Post a Comment