круговая диаграмма с использованием devexpress, передача значений из переменных - PullRequest
3 голосов
/ 30 ноября 2011

Я использую DevExpress для WinForms (бесплатная) и 3D круговую диаграмму.У меня уже есть диаграмма, использующая версию Windows, и все, что я делаю, это передаю четыре переменные в качестве значений, необходимых диаграмме в серии.Вот код, который я сейчас использую.

double[] yValues = { bottom, bmid, tmid, top};
string[] xNames = { "Greater than 200", "Between 200-100", "Between 100-50",                "Below 50" };

chart1.Series[0].Points.DataBindXY(xNames, yValues);

Теперь я создал диаграмму DevExpress и попытался использовать:

   Devchart1.series[0].points   

, но points.databind не существует.Кто-нибудь знает, как я связываю данные, как я использую WinForms?

UPDATE Вот еще несколько вещей, которые я попробовал (закомментировал).:: Вот что происходит с этим кодом со значениями 101, 22, 20 и 15. enter image description here

1 Ответ

3 голосов
/ 30 ноября 2011

DevExpress Серия имеет свойство DataSource для привязки.

Отметьте статью . Надеюсь, это поможет

UPDATE: Я использую ваш код, и он, кажется, работает нормально

        DataTable chartTable = new DataTable("Table1");

        // Add two columns to the table.
        chartTable.Columns.Add("Names", typeof(string));
        chartTable.Columns.Add("Value", typeof(Int32));
        chartTable.Rows.Add("Below 50", 10);
        chartTable.Rows.Add("Between 50-100", 10);
        chartTable.Rows.Add("Between 100-200", 10);
        chartTable.Rows.Add("Greater than 200", 10);

        Series series1 = new Series("Series1", ViewType.Pie3D);

        //chartControl1.Series.Clear();
        chartControl2.Series.Add(series1);

        series1.DataSource = chartTable;
        series1.ArgumentScaleType = ScaleType.Qualitative;
        series1.ArgumentDataMember = "names";
        series1.ValueScaleType = ScaleType.Numerical;
        series1.ValueDataMembers.AddRange(new string[] { "Value" });
        //((Pie3DSeriesView)series1.View). = true;
        //((pie)chartControl2.Diagram).AxisY.Visible = false;
        chartControl2.Legend.Visible = false;

enter image description here

...