owc组件使用(统计分析图)

    技术2022-05-11  62

    页面代码:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="_ReportOwc.aspx.cs" Inherits="_ReportOwc" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server">    <title>无标题页</title><link href="../images/xj_style.css" _fcksavedurl=""../images/xj_style.css"" _fcksavedurl=""../images/xj_style.css"" rel="stylesheet" type="text/css" />      <script language="javascript" src="../System_Web_Resources.js" type="text/css"></script>   </head><body οnlοad="parent.window.document.all.myiframe.style.height=document.body.scrollHeight+10;">    <form id="form1" runat="server">        <table style="width: 100%" id="TABLE2" runat="server">            <tr>                <td align="center" colspan="1" rowspan="1" style="height: 23px; width: 949px;" valign="top">        <table id="Table4" border="0" cellpadding="0" cellspacing="0" width="98%">            <tr>                <td align="left" style="height: 43px" valign="bottom" width="40%">                    <table id="Table5" border="0" cellpadding="0" cellspacing="0" style="border-bottom: #ffffff 1px solid">                        <tr>                            <td class="lmstyle">                                <img align="Middle" height="20" src="../images/blacksjbiao_big.gif" width="15" />                                 <asp:Label ID="LabelMailTitle" runat="server" Font-Size="14px" Text="统计图表"></asp:Label></td>                            <td align="left">                                <img height="27" src="../images/lmtu_right.gif" width="27" /></td>                        </tr>                    </table>                </td>                <td style="height: 43px" width="60%">                    <div align="right">                        <img height="41" src="../images/index2.gif" width="306" /></div>                </td>            </tr>        </table>                </td>            </tr>            <tr>                <td align="left" rowspan="2" valign="top" style="width: 949px">                <table id="Table1" border="0" cellpadding="1" cellspacing="1" width="100%">                    <tr>                        <td style="height: 24px">                            选择时间段:<asp:DropDownList ID="DropDownList2" runat="server">                            </asp:DropDownList>                            <asp:DropDownList ID="DropDownList3" runat="server">                            </asp:DropDownList>—                            <asp:DropDownList ID="DropDownList4" runat="server">                            </asp:DropDownList>                            <asp:DropDownList ID="DropDownList5" runat="server">                            </asp:DropDownList>                              <asp:Button ID="btnSelect" runat="server" OnClick="btnSelect_Click" Text="检索" CssClass="xjbutton1" />                              选择图表类型:                            <asp:DropDownList ID="_DropDownListtype" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList_SelectedIndexChanged">                            </asp:DropDownList>                               <asp:Button ID="Button3" runat="server" Text="绘制饼图" OnClick="Button3_Click" Visible="False" CssClass="xjbutton1" />                            <asp:Button ID="Button2" runat="server" Text="绘制条状图" OnClick="Button2_Click" Visible="False" CssClass="xjbutton1" />                            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="绘制柱状图" Visible="False" CssClass="xjbutton1" /></td>                    </tr>                </table>                </td>            </tr>            <tr>            </tr>            <tr>                <td align="center" valign="top" style="width: 949px; height: 32px">                <asp:Image ID="Image1" runat="server" /></td>            </tr>        </table>                  <font face="宋体">                <asp:TreeView ID="TreeView1" runat="server" Visible="False">                    <Nodes>                        <asp:TreeNode Text="简单检索" Value="0"></asp:TreeNode>                    </Nodes>                </asp:TreeView>                </font>    </form></body></html>

    C#代码:

    using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using Microsoft.Office.Interop.Owc11;using System.Text;

    public partial class _ReportOwc : System.Web.UI.Page{    MyCRM.DB db = new MyCRM.DB();   ChartFactory chartFactory=new ChartFactory();   DataTable dt=new DataTable();    DataTable treetable = new DataTable();  OWCChart11  chart = new OWCChart11(); string filepath ="";  public static Hashtable chartMap = new Hashtable();

        string type = "dept";    string sql = "select d.name,count(d.name) from person p join dept d on d.id=p.dept where person_state='正常' group by d.name"; public void Page_Load(object sender, System.EventArgs e) {               dt = db.ececSelectSql("select top 50 person.truename,wage.薪资 from person left join wage on person.id=wage.员工姓名");   filepath= Server.MapPath(".") + "//ChartImages";  Image1.ImageUrl="";  InitTypeMap();

            treetable = db.ececSelectSql("select col_name,show_name from tablestruct where table_name='person' order by [id]");         // 在此处放置用户代码以初始化页面  #region 按钮绘制图形  chart.Title = "标题";  chart.SeriesName = "图例";    chart.PhaysicalImagePath = filepath;  chart.PicHight = 320;  chart.PicWidth = 500;  chart.DataSource = dt;//这是你的数据源#endregion        if (!IsPostBack)        {            deleteFile();                       //默认绘制                        for (int i = 1; i < 13; i++)            {                ListItem item = new ListItem();                item.Text = Convert.ToString(DateTime.Now.Year-i)+"年";                item.Value = Convert.ToString(DateTime.Now.Year-i);                DropDownList2.Items.Add(item);                DropDownList4.Items.Add(item);

                    item = new ListItem();                item.Text = Convert.ToString(i) + "月";                item.Value = Convert.ToString(i);                DropDownList3.Items.Add(item);                DropDownList5.Items.Add(item);            }                   }

            if (Request.QueryString["type"] != null)        {            type = Request.QueryString["type"].ToString().Trim();            //Response.Write(type);        }        else         {            type = "dept";        }

            switch (type)        {            case "post"://职务                sql = "select d.post,count(d.post) from person p join post d on d.id=p.post where person_state='正常' group by d.post";                break;            case "dept"://部门                sql = "select d.name,count(d.name) from person p join dept d on d.id=p.dept where person_state='正常' group by d.name";                break;            case "sex"://性别                sql = "select sex,count(sex) from person where person_state='正常' group by sex";                break;            case "PoliticsVisage"://政治面貌                sql = "select PoliticsVisage,count(PoliticsVisage) from person where person_state='正常' group by PoliticsVisage";                break;            case "person_state"://员工状态                sql = "select [person_state],count([person_state]) from person  group by [person_state]";                break;            default:                break;        }        DropDownList_SelectedIndexChanged(sender, e); }

        public void deleteFile() {        string[] strFileName=System.IO.Directory.GetFiles(Server.MapPath(".")+@"/ChartImages/");  for(int i=0;i<strFileName.Length;i++)  {        System.IO.FileInfo file=new System.IO.FileInfo(strFileName[i]);   string strtemp=file.Name.Split('.')[0];            if (strtemp.Length > 8)            {                               strtemp = strtemp.Substring(0, 4) + "-" + strtemp.Substring(4, 2) + "-" + strtemp.Substring(6, 2);                if (Convert.ToDateTime(strtemp) < DateTime.Now.AddDays(-1))                {                    if (file.Exists)                    {                        file.Delete();                    }                }            }  }   }    public void InitTypeMap()    {        chartMap.Clear();        string str = "";        if (_DropDownListtype.Items.Count > 0)        {            str = _DropDownListtype.SelectedItem.Text;        }

            _DropDownListtype.Items.Clear();        Microsoft.Office.Interop.Owc11.ChartChartTypeEnum[] chartTypes = new Microsoft.Office.Interop.Owc11.ChartChartTypeEnum[]{ ChartChartTypeEnum.chChartTypeColumnClustered,                      ChartChartTypeEnum.chChartTypeColumn3D,                      ChartChartTypeEnum.chChartTypeBarClustered,                      ChartChartTypeEnum.chChartTypeBar3D,                      ChartChartTypeEnum.chChartTypeArea,                      ChartChartTypeEnum.chChartTypeArea3D,                      ChartChartTypeEnum.chChartTypeDoughnut,                      ChartChartTypeEnum.chChartTypeLineStacked,                      ChartChartTypeEnum.chChartTypeLine3D,                      ChartChartTypeEnum.chChartTypeLineMarkers,                      ChartChartTypeEnum.chChartTypePie,                      ChartChartTypeEnum.chChartTypePie3D,                      ChartChartTypeEnum.chChartTypeRadarSmoothLine,                      ChartChartTypeEnum.chChartTypeSmoothLine};        string[] chartTypesCh = new string[] { "垂直柱状统计图", "3D垂直柱状统计图", "水平柱状统计图", "3D水平柱状统计图", "区域统计图", "3D区域统计图", "中空饼图", "折线统计图", "3D折线统计图", "折线带点统计图", "饼图", "3D饼图", "网状统计图", "弧线统计图" };

            for (int i = 0; i < chartTypes.Length; i++)        {            chartMap.Add(chartTypesCh[i], chartTypes[i]);        }

            for (int i = 0; i < chartTypes.Length; i++)        {            ListItem ii = new ListItem(chartTypesCh[i]);            _DropDownListtype.Items.Add(ii);        }        foreach (ListItem ii in _DropDownListtype.Items)        {            if (ii.Text == str)            {                ii.Selected = true;            }        }    }

        #region 按钮事件    public void Button1_Click(object sender, System.EventArgs e)    {        this.Image1.ImageUrl = @"./ChartImages/" + chart.CreateColumn();//显示给图像控件。    }

        public void Button2_Click(object sender, System.EventArgs e)    {        this.Image1.ImageUrl = @"./ChartImages/" + chart.CreateBar();//显示给图像控件。    }

        public void Button3_Click(object sender, System.EventArgs e)    {        this.Image1.ImageUrl = @"./ChartImages/" + chart.CreatePie();//显示给图像控件。    }    //按钮绘制类    public class OWCChart11    {

            #region 属性        public string _phaysicalimagepath;        public string _title;        public string _seriesname;        public int _picwidth;        public int _pichight;        public DataTable _datasource;        public string strCategory;        public string strValue;

            /// <summary>        /// 图片存放路径        /// </summary>        public string PhaysicalImagePath        {            set { _phaysicalimagepath = value; }            get { return _phaysicalimagepath; }        }        /// <summary>        /// 图片标题        /// </summary>        public string Title        {            set { _title = value; }            get { return _title; }        }        /// <summary>        /// 图片说明        /// </summary>        public string SeriesName        {            set { _seriesname = value; }            get { return _seriesname; }        }        /// <summary>        /// 图片宽度        /// </summary>        public int PicWidth        {            set { _picwidth = value; }            get { return _picwidth; }        }        /// <summary>        /// 图片高度        /// </summary>        public int PicHight        {            set { _pichight = value; }            get { return _pichight; }        }        /// <summary>        /// 图片数据源        /// </summary>        public DataTable DataSource        {            set            {                _datasource = value;                strCategory = GetColumnsStr(_datasource);                strValue = GetValueStr(_datasource);            }            get { return _datasource; }        }        /// <summary>        /// 列类型        /// </summary>        public string GetColumnsStr(DataTable dt)        {            StringBuilder strList = new StringBuilder();            foreach (DataRow r in dt.Rows)            {                strList.Append(r[0].ToString() + '/t');            }            return strList.ToString();        }        /// <summary>        /// 列值        /// </summary>        public string GetValueStr(DataTable dt)        {            StringBuilder strList = new StringBuilder();            foreach (DataRow r in dt.Rows)            {                strList.Append(r[1].ToString() + '/t');            }            return strList.ToString();        }

            #endregion

            public OWCChart11()        {        }        public OWCChart11(string PhaysicalImagePath, string Title, string SeriesName)        {            _phaysicalimagepath = PhaysicalImagePath;            _title = Title;            _seriesname = SeriesName;        }

            /// <summary>        /// 柱形图        /// </summary>        /// <returns></returns>        public string CreateColumn()        {            Microsoft.Office.Interop.Owc11.ChartSpace objCSpace = new Microsoft.Office.Interop.Owc11.ChartSpaceClass();//创建ChartSpace对象来放置图表               Microsoft.Office.Interop.Owc11.ChChart objChart = objCSpace.Charts.Add(0);//在ChartSpace对象中添加图表,Add方法返回chart对象

                //指定图表的类型。类型由OWC.ChartChartTypeEnum枚举值得到//Microsoft.Office.Interop.OWC.ChartChartTypeEnum            //objChart.Type = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypeColumnClustered;

                objChart.Type = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypeColumnClustered;            //指定图表是否需要图例            objChart.HasLegend = true;

                //标题            objChart.HasTitle = true;            objChart.Title.Caption = _title;            objChart.Title.Font.Bold = true;            objChart.Title.Font.Color = "blue";

                #region 样式设置

                //旋转            objChart.Rotation = 360;//表示指定三维图表的旋转角度            objChart.Inclination = 10;//表示指定三维图表的视图斜率。有效范围为 -90 到 90

                //背景颜色            objChart.PlotArea.Interior.Color = "yellow";

                //底座颜色            objChart.PlotArea.Floor.Interior.Color = "green";

                objChart.Overlap = 50;//单个类别中标志之间的重叠量

                #endregion

                //x,y轴的图示说明            objChart.Axes[0].HasTitle = true;            objChart.Axes[0].Title.Caption = "X : 类别";            objChart.Axes[1].HasTitle = true;            objChart.Axes[1].Title.Caption = "Y : 数量";

                //添加一个series            Microsoft.Office.Interop.Owc11.ChSeries ThisChSeries = objChart.SeriesCollection.Add(0);

                //给定series的名字            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimSeriesNames,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), SeriesName);            //给定分类            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimCategories,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), strCategory);            //给定值            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimValues,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), strValue);

                Microsoft.Office.Interop.Owc11.ChDataLabels dl = objChart.SeriesCollection[0].DataLabelsCollection.Add();            dl.HasValue = true;            //   dl.Position=Microsoft.Office.Interop.Owc11.ChartDataLabelPositionEnum.chLabelPositionOutsideEnd;

                string filename = DateTime.Now.ToString("yyyyMMddHHmmssff") + ".gif";            string strAbsolutePath = _phaysicalimagepath + "//" + filename;            objCSpace.ExportPicture(strAbsolutePath, "GIF", _picwidth, _pichight);//输出成GIF文件.

                return filename;

            }

            /// <summary>        /// 饼图        /// </summary>        /// <returns></returns>        public string CreatePie()        {            Microsoft.Office.Interop.Owc11.ChartSpace objCSpace = new Microsoft.Office.Interop.Owc11.ChartSpaceClass();//创建ChartSpace对象来放置图表               Microsoft.Office.Interop.Owc11.ChChart objChart = objCSpace.Charts.Add(0);//在ChartSpace对象中添加图表,Add方法返回chart对象

                //指定图表的类型            objChart.Type = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypePie;

                //指定图表是否需要图例            objChart.HasLegend = true;

                //标题            objChart.HasTitle = true;            objChart.Title.Caption = _title;

                //添加一个series            Microsoft.Office.Interop.Owc11.ChSeries ThisChSeries = objChart.SeriesCollection.Add(0);

                //给定series的名字            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimSeriesNames,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), SeriesName);            //给定分类            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimCategories,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), strCategory);            //给定值            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimValues,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), strValue);

                //表示系列或趋势线上的单个数据标志            Microsoft.Office.Interop.Owc11.ChDataLabels dl = objChart.SeriesCollection[0].DataLabelsCollection.Add();            dl.HasValue = true;            dl.HasPercentage = true;            //图表绘图区的图例放置在右侧。            //   dl.Position=Microsoft.Office.Interop.Owc11.ChartDataLabelPositionEnum.chLabelPositionRight;

                string filename = DateTime.Now.ToString("yyyyMMddHHmmssff") + ".gif";            string strAbsolutePath = _phaysicalimagepath + "//" + filename;            objCSpace.ExportPicture(strAbsolutePath, "GIF", _picwidth, _pichight);//输出成GIF文件.

                return filename;        }

            /// <summary>        /// 条形图        /// </summary>        /// <returns></returns>        public string CreateBar()        {            Microsoft.Office.Interop.Owc11.ChartSpace objCSpace = new Microsoft.Office.Interop.Owc11.ChartSpaceClass();//创建ChartSpace对象来放置图表               Microsoft.Office.Interop.Owc11.ChChart objChart = objCSpace.Charts.Add(0);//在ChartSpace对象中添加图表,Add方法返回chart对象

                //指定图表的类型。类型由OWC.ChartChartTypeEnum枚举值得到//Microsoft.Office.Interop.OWC.ChartChartTypeEnum            objChart.Type = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypeBarClustered;

                //指定图表是否需要图例            objChart.HasLegend = true;

                //标题            objChart.HasTitle = true;            objChart.Title.Caption = _title;            objChart.Title.Font.Bold = true;            objChart.Title.Font.Color = "blue";

                #region 样式设置

                //   //旋转            objChart.Rotation = 360;//表示指定三维图表的旋转角度            objChart.Inclination = 10;//表示指定三维图表的视图斜率。有效范围为 -90 到 90

                //背景颜色            objChart.PlotArea.Interior.Color = "red";

                //底座颜色            objChart.PlotArea.Floor.Interior.Color = "green";

                objChart.Overlap = 50;//单个类别中标志之间的重叠量

                #endregion

                //x,y轴的图示说明            objChart.Axes[0].HasTitle = true;            objChart.Axes[0].Title.Caption = "X : 类别";            objChart.Axes[1].HasTitle = true;            objChart.Axes[1].Title.Caption = "Y : 数量";

                //添加一个series            Microsoft.Office.Interop.Owc11.ChSeries ThisChSeries = objChart.SeriesCollection.Add(0);

                //给定series的名字            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimSeriesNames,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), SeriesName);            //给定分类            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimCategories,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), strCategory);            //给定值            ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimValues,                Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(), strValue);

                Microsoft.Office.Interop.Owc11.ChDataLabels dl = objChart.SeriesCollection[0].DataLabelsCollection.Add();            dl.HasValue = true;            //   dl.Position=Microsoft.Office.Interop.Owc11.ChartDataLabelPositionEnum.chLabelPositionOutsideEnd;

                string filename = DateTime.Now.ToString("yyyyMMddHHmmssff") + ".gif";            string strAbsolutePath = _phaysicalimagepath + "//" + filename;            objCSpace.ExportPicture(strAbsolutePath, "GIF", _picwidth, _pichight);//输出成GIF文件.

                return filename;

            }

        }

        #endregion

        #region 下拉框事件

        public void DropDownList_SelectedIndexChanged(object sender, System.EventArgs e)    {               string[] chartCategories = new string[10];        string[] chartValues = new string[10];

            //Response.Write(sql);        DataTable ddt=db.ececSelectSql(sql);

            for (int i = 0; i < ddt.Rows.Count; i++)        {            chartCategories[i] = ddt.Rows[i][0].ToString();            chartValues[i] = ddt.Rows[i][1].ToString();        }

            chartFactory.chartCategoriesArrValue = chartCategories;        chartFactory.chartValuesArrValue = chartValues;        chartFactory.chartTitleValue = "统计图表";        chartFactory.chartTypeValue = _DropDownListtype.SelectedItem.Text;        Microsoft.Office.Interop.Owc11.ChartSpaceClass oChartSpace = chartFactory.BuildCharts();        string filename = DateTime.Now.ToString("yyyyMMddHHmmssff") + ".png";        string path = Server.MapPath(".") + @"/ChartImages/" + filename;  //产生图片并保存,还可以是png gif图片        if (System.IO.File.Exists(path))        {            System.IO.File.Delete(path);        }        oChartSpace.ExportPicture(path, "png", 470,330);        Image1.ImageUrl = @"./ChartImages/" + filename;  // 显示统计图    }

        #region 下拉框绘制类    public class ChartFactory    {        public ChartFactory()        {

            }        public System.Web.UI.WebControls.Image imgHondaLineup;        public string[] chartCategoriesArr;        public string[] chartValuesArr;        public Microsoft.Office.Interop.Owc11.ChartChartTypeEnum chartType = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypeColumn3D;//默认值        public static string chartTypeCh = "垂直柱状图";        public static string chartTitle = "";

            public Microsoft.Office.Interop.Owc11.ChartSpaceClass BuildCharts()        {            string chartCategoriesStr = String.Join("/t", chartCategoriesArr);            string chartValuesStr = String.Join("/t", chartValuesArr);

                Microsoft.Office.Interop.Owc11.ChartSpaceClass oChartSpace = new Microsoft.Office.Interop.Owc11.ChartSpaceClass();

                int ii = chartMap.Count;            chartType = (ChartChartTypeEnum)chartMap[chartTypeCh];

                if (chartType == ChartChartTypeEnum.chChartTypePie ||                chartType == ChartChartTypeEnum.chChartTypePie3D ||                chartType == ChartChartTypeEnum.chChartTypeDoughnut)            {                oChartSpace.HasChartSpaceLegend = true;                oChartSpace.ChartSpaceLegend.Position = ChartLegendPositionEnum.chLegendPositionBottom;            }

                oChartSpace.Border.Color = "blue";            oChartSpace.Charts.Add(0);            oChartSpace.Charts[0].HasTitle = true;            oChartSpace.Charts[0].Type = chartType;            oChartSpace.Charts[0].ChartDepth = 125;            oChartSpace.Charts[0].AspectRatio = 80;            oChartSpace.Charts[0].Title.Caption = chartTitle;            oChartSpace.Charts[0].Title.Font.Bold = true;

                oChartSpace.Charts[0].SeriesCollection.Add(0);            oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection.Add();

                if (chartType == ChartChartTypeEnum.chChartTypePie ||                chartType == ChartChartTypeEnum.chChartTypePie3D ||                chartType == ChartChartTypeEnum.chChartTypeDoughnut)            {                //oChartSpace.Charts[0].HasLegend = true;                oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].HasPercentage = true ;                oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].HasValue = false;            }            else            {                oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].HasPercentage = false;                oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].HasValue = true;            }

                oChartSpace.Charts[0].SeriesCollection[0].Caption = String.Empty;            oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].Font.Name = "verdana";            oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].Font.Size = 10;            oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].Font.Bold = false;            oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].Font.Color = "red";            oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].Position = ChartDataLabelPositionEnum.chLabelPositionCenter;

                if (chartType == ChartChartTypeEnum.chChartTypeBarClustered ||                chartType == ChartChartTypeEnum.chChartTypeBar3D ||                chartType == ChartChartTypeEnum.chChartTypeColumnClustered ||                chartType == ChartChartTypeEnum.chChartTypeColumn3D)            {                oChartSpace.Charts[0].SeriesCollection[0].DataLabelsCollection[0].Position = ChartDataLabelPositionEnum.chLabelPositionOutsideEnd;            }

                oChartSpace.Charts[0].SeriesCollection[0].SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimCategories,                Convert.ToInt32(Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral), chartCategoriesStr);

                oChartSpace.Charts[0].SeriesCollection[0].SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimValues,                Convert.ToInt32(Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral), chartValuesStr);

                return oChartSpace;        }

            #region  属性设置        public string[] chartCategoriesArrValue        {            get            {                return chartCategoriesArr;            }            set            {                chartCategoriesArr = value;            }        }

            public string[] chartValuesArrValue        {            get            {                return chartValuesArr;            }            set            {                chartValuesArr = value;            }        }        public string chartTypeValue        {            get            {                return chartTypeCh;            }            set            {                chartTypeCh = value;            }        }        public string chartTitleValue        {            get            {                return chartTitle;            }            set            {                chartTitle = value;            }        }        #endregion    }#endregion    #endregion

        protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)    {        TreeView1.SelectedNodeStyle.BackColor = System.Drawing.Color.PaleGoldenrod;     }    protected void btnSelect_Click(object sender, EventArgs e)    {        DropDownList_SelectedIndexChanged(sender, e);    }}


    最新回复(0)