Silverlight で RadBarChart を作成しています。
Yvalue
とのXCategory
値を同じクラスにハードコーディングすると、グラフに正しいデータが表示されます。
Initializecomponent()
以下は、 Sample.cs クラスのメソッドの後に呼び出しているメソッドです。
public void FillSampleChartData()
{
DataSeries dataSeries = new DataSeries();
dataSeries.Definition = new BarSeriesDefinition();
dataSeries.Add(new DataPoint() { YValue = 1127.13, XCategory = "Victor" });
dataSeries.Add(new DataPoint() { YValue = 1123.80, XCategory = "Kishore" });
dataSeries.Add(new DataPoint() { YValue = 9948.94, XCategory = "Vincent" });
RadChartSales.DefaultView.ChartArea.DataSeries.Add(dataSeries);
}
他のクラスから同じメソッドを呼び出すかどうかは疑問です...棒グラフにデータが表示されません。グラフにデータが表示されない理由を教えてください。
//This is my original method
public void FillSampleChartData(IList collection)
{
int listcount = collection.Count;
int count = -1;
double[] myArray1 = new double[listcount];
string[] myArray2 = new string[listcount];
foreach (BizFramework.Web.Model.SalesBySalesPersonSummary_Result dtvws in collection)
{
count++;
myArray1[count] = Convert.ToDouble(dtvws.Amount);
myArray2[count] = dtvws.Salesperson;
}
DataSeries dataSeries = new DataSeries();
dataSeries.Definition = new BarSeriesDefinition();
if (myArray1.Count() > 0)
{
for (int i = 0; i < myArray1.Count(); i++)
{
dataSeries.Add(new DataPoint() { YValue = myArray1[i], XCategory = myArray2[i] });
}
RadChartSales.DefaultView.ChartArea.DataSeries.Add(dataSeries);
}
}