Вопрос

У меня есть DataTable, который я добавляю к диаграмме в цикле Foreach, как следует и присвоить DTMAN DataRow для Xaxis of Chart, который есть имена месяца:

                foreach (DataRow dr in dtMD.Rows)
                {

                    DataTable dtMDByName = ocw.GetMDByName(Convert.ToDateTime(txtStartDate.Text), Convert.ToDateTime(txtEndDate.Text), dr["MD"].ToString());

                    if (dtMDByName.Rows.Count > 0)
                    {
                        ChartSeries MDChartSeries = new ChartSeries();
                        MDChartSeries.Name = dtMDByName.Rows[0][1].ToString();
                        MDChartSeries.Type = ChartSeriesType.Line;

                        foreach (DataRow drByName in dtMDByName.Rows)
                        {
                            MDChartSeries.AddItem(Convert.ToDouble(drByName["T"]));

                            radMD.PlotArea.XAxis.DataLabelsColumn = drByName["dtMonth"].ToString();
                        }

                        radMD.ChartTitle.TextBlock.Text = "MDs";
                        radMD.PlotArea.XAxis.AutoScale = true;
                        radMD.Series.Add(MDChartSeries);

                    }
                }
.

Но все же он показывает как цифры в Xaxis, что-то, что я делаю неправильно в вышеуказанном коде?

Даже если я сделаю это вне второй петли I.e следующий код все еще не показывает имена месяцев:

radMD.PlotArea.XAxis.DataLabelsColumn = "dtMonth";
.

Спасибо

Это было полезно?

Решение

узнал, что вам нужно установить AutoSalet в false, а затем добавить TextBlock, как следует:

                              radMD.PlotArea.XAxis.AutoScale = true;
                                for (int i = 0; i < dtMDByName.Rows.Count; i++)
                                {
                                    radMD.PlotArea.XAxis[i].TextBlock.Text = dtMDByName.Rows[i][3].ToString();
                                }
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top