来一篇关于chart控件的实例吧,太不好找了.资料

/// <summary>
        /// 使用treeNode中的数据填充chart图标
        /// </summary>
        /// <param name="tnGuiGe">treeNode节点:规格层面</param>
        private void FillChart(TreeNode tnGuiGe)
        {
            label_TipChart.Visible = false;
            DataTable dt = new DataTable();
            dt.Columns.Add("step");//步骤数
            dt.Columns.Add("renWuShuLiang");//任务数量
            dt.Columns.Add("WCShuLiang");//实际完成数量
            int renWu = int.Parse(tnGuiGe.Nodes[1].Text.Split(':')[1]);//取到任务数量
            foreach (TreeNode tnc in tnGuiGe.Nodes[4].Nodes)
            {
                string step = tnc.Text.Split(':')[1];//步骤名称
                int WCShuLiang = int.Parse(tnc.Nodes[2].Tag.ToString());//完成数量
                dt.Rows.Add(step, renWu, WCShuLiang);//添加数据行
            }
            //清空chart1
            chart1.DataSource = null;
            chart1.Series.Clear();
            //绑定chart
            chart1.DataSource = dt;
            chart1.Series.Add("工序任务数量");
            chart1.Series.Add("工序完成数量");
            chart1.Series[0].XValueMember = "step";
            //MessageBox.Show(chart1.Series[0].ChartType.ToString());
            //chart1.Series[0].ChartType = SeriesChartType.Column;
            chart1.Series[0].YValueMembers = "renWuShuLiang";
            chart1.Series[1].YValueMembers = "WCShuLiang";
           // chart1.Series[1].ChartType = SeriesChartType.Column;
            chart1.Series[0].IsValueShownAsLabel = true;//显示图的值
            chart1.Series[1].IsValueShownAsLabel = true;//显示图的值
            chart1.Titles.Clear();//清空标题
            chart1.Titles.Add("【 "+tnGuiGe.Nodes[0].Text+"    规格"+tnGuiGe.Text+"】生产进度跟踪");//添加一个标题           

            //背景颜色
            chart1.BackColor = Color.Black; //控件背景色
            chart1.Legends[0].BackColor = Color.Black;//图例文字背景色
            chart1.ChartAreas[0].BackColor = Color.Black;//网格(绘图区域)背景色
            //前景颜色
            chart1.ForeColor = Color.Green; //控件
            chart1.Legends[0].ForeColor = Color.DarkOrange;//图例文字
            chart1.Series[0].LabelForeColor = Color.Red;//图顶端值
            chart1.Series[1].LabelForeColor = Color.Lime;
            chart1.Series[0].Color = Color.Red;//图形线或者填充的颜色
            chart1.Series[1].Color = Color.LimeGreen;
            chart1.ChartAreas[0].AxisX.LineColor = Color.Green;//坐标轴线颜色
            chart1.ChartAreas[0].AxisY.LineColor = Color.Green;
            chart1.ChartAreas[0].AxisX.MajorGrid.LineColor = Color.Gray;//坐标轴方向的网格线颜色
            chart1.ChartAreas[0].AxisY.MajorGrid.LineColor = Color.Gray;//坐标轴方向的网格线颜色
            chart1.ChartAreas[0].AxisX.MajorTickMark.LineColor = Color.Green;//坐标刻度颜色
            chart1.ChartAreas[0].AxisY.MajorTickMark.LineColor = Color.Green;//坐标刻度颜色           
            chart1.ChartAreas[0].AxisX.TitleForeColor = Color.Green;//轴标题颜色
            chart1.ChartAreas[0].AxisX.LabelStyle.ForeColor = Color.DarkOrange;//坐标轴文字颜色
            chart1.ChartAreas[0].AxisY.LabelStyle.ForeColor = Color.DarkOrange;
            chart1.Titles[0].ForeColor = Color.Lime;//chart标题前景色
        }    

由于chart控件被微软这帮老头子搞得太强悍,导致其整个控件的复杂性叹为观止

类型层数多,属性杂,成了想使用它的最大的拦路虎

这里放的是一个实实在在的东西,兴许是大家也想用上的东西,也紧紧包含常用的

没啥多讲的,全部在注释里面了.

直接看代码的注释吧

猜你喜欢

转载自blog.csdn.net/zhongheijituan/article/details/37934213
今日推荐