문제

Foreach 루프에서 차트에 추가하여 월 이름을 차트의 Xaxis에 할당하고 할당하는 DataTable을 가지고 있습니다.

                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의 숫자로 표시되며 위의 코드에서 잘못을하는 것은 무엇입니까?

두 번째 루프 밖에있는 경우에도 다음 코드가 여전히 표시되지 않습니다.

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

감사합니다

도움이 되었습니까?

해결책

Autoscale을 False로 설정 한 다음 텍스트 블록을 다음과 같이 추가해야합니다.

                              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