تحويل datatable إلى بنية البيانات ليتم قراءتها بواسطة MS Conged Chart Control؟
-
29-09-2019 - |
سؤال
لديّ عنصر تحكم في المخطط (مخطط مكدّس لأكون أكثر دقة) وقابل بيانات يحتوي على 3 أعمدة. أريد ربطهم بمخطط شريط مكدسة. فيما يلي ما يبدو عليه البيانات:
مورد | قائمة الانتظار | صدق الساعة
بيلي جونز | المشاريع - داخلي | 234
بيلي جونز | المستوى 1 دعم | 234
آلان كلارك | المشاريع - داخلي | 123
آلان كلارك | المستوى 1 دعم | 234
سيكون لدي عمود الموارد كمحور X ، والقيمة (ساعات العمل) لكل قائمة انتظار كمحور ص (مكدسة)
هل أستطيع مساعدتك؟ لقد حاولت فقط الربط بشكل طبيعي وأتلقى خطأً في قول إنه نوع البيانات الخاطئ.
شكرًا،
بيلي
المحلول
جرب هذا للحجم:
DataTable table2 = new DataTable();
table2.Columns.Add("Resource", typeof(string));
table2.Columns.Add("Queue", typeof(string));
table2.Columns.Add("Hoursworked", typeof(int));
table2.Rows.Add("Billy Jones", "Projects - Internal", 234);
table2.Rows.Add("Billy Jones", "Tier 1 Support" , 234);
table2.Rows.Add("Alan Clark", "Projects - Internal" ,123);
table2.Rows.Add("Alan Clark", "Tier 1 Support", 234);
foreach (DataRow row in table2.Rows)
{
string seriesName1 = row["Queue"].ToString();
Series series = new Series(); ;
try {
series = Chart2.Series[seriesName1];
}
catch {
if (series.Name == "") {
Chart2.Series.Add(seriesName1);
Chart2.Series[seriesName1].ChartType = SeriesChartType.StackedColumn;
}
}
Chart2.Series[row["Queue"].ToString()].Points.AddXY(row["Resource"].ToString(), (int)row["Hoursworked"]);
}
لا تنتمي إلى StackOverflow