MSChart:我怎样才能改变一些 AxisLabels

MSChart: how can I change some AxisLabels

我想为我的图表更改一些系列中的一些轴标签

            DataTable dt = new DataTable();
            SqlCommand s = new SqlCommand("ReportMonthly", SCon);
            s.CommandType = CommandType.StoredProcedure;
            s.Parameters.AddWithValue("@Y", Y);
            SCon.Open();
            SqlDataReader dr = s.ExecuteReader();
            dt.Load(dr);            
            chtWRMonthly.DataSource = dt;
            chtWRMonthly.Series["Sold"].XValueMember = "x";            
            chtWRMonthly.Series["sRemaining"].XValueMember = "x";            
            chtWRMonthly.Series["Bought"].XValueMember = "x";            
            chtWRMonthly.Series["bRemaining"].XValueMember = "x";

            chtWRMonthly.Series["Sold"].YValueMembers = "sTAccount";
            chtWRMonthly.Series["sRemaining"].YValueMembers = "sRemaining";
            chtWRMonthly.Series["Bought"].YValueMembers = "bTAccount";
            chtWRMonthly.Series["bRemaining"].YValueMembers = "bRemaining";
            SCon.Close();

            //انتصاب نام ماه ها
            foreach (Series SR in chtWRMonthly.Series)
            {
                foreach (DataPoint DP in SR.Points)
                {
                    switch (DP.AxisLabel)
                    {
                        case "1":
                            DP.AxisLabel = "x1";
                            break;
                        case "2":
                            DP.AxisLabel = "x2";
                            break;
                        case "3":
                            DP.AxisLabel = "x3";
                            break;
                        case "4":
                            DP.AxisLabel = "x4";
                            break;
                  }                        
                }
             }

我尝试通过 Switch 更改它们,但没有任何反应。

你的DataPoints没有真正的AxisLabels。它们显示的字符串是从 DataPoint.XValues.

自动创建的

所以你的开关永远不会按下。

替换

 switch (DP.AxisLabel)

来自

 switch (DP.XValue + "")

它会起作用的。

请注意,我已将 double XValue 转换为 string 以适应您的 switch 代码。将switch选项改为numbers即可直接使用。

设置 AxisLabels 之后,您可以将它们用于测试,但在此之前不能..

查看各种图表标签的 here for a good overview