microsoft office web 组件(owc11)的编程(.net)
microsoft office web 组件(owc11)的编程(.net) owc控件是microsoft office 图表控件(owc10为ofiiceXP的组件、owc11为office2003的组件,组件的路径为C:\Program Files\Common Files\Microsoft Shared\Web Components\11\owc11,帮助文件的路径为C:\Program Files\Common Files\Microsoft Shared\Web Components\11\2052),它可以生成三维图、柱状图、饼状图、趋势图和误差图,下面以生成三维图web应用程序为例:
1,添加引用:在“com选项卡”中选择“misrosoft office 11.0 object library”
2,具体代码如下:
1
using System;2
3
using System.Collections;4
5
using System.ComponentModel;6
7
using System.Data;8
9
using System.Drawing;10
11
using System.Web;12
13
using System.Web.UI;14
15
using Microsoft.Office.Interop;16
17
18
namespace WebApplication219
{20
/**//// <summary>21
/// WebForm1 的摘要说明。22
/// </summary>23
public class WebForm1 : System.Web.UI.Page24
{25
26
private void Page_Load(object sender, System.EventArgs e)27
{28
string strCategory = '1' + '\t' + '2' + '\t' + '3' + '\t'+'4' + '\t' + '5' + '\t' + '6' + '\t';29
string strValue = '9' + '\t' + '8' + '\t' + '4' + '\t'+'10' + '\t' + '12' + '\t' + '6' + '\t';30
31
//声明对象32
Microsoft.Office.Interop.Owc11.ChartSpace ThisChart = new Microsoft.Office.Interop.Owc11.ChartSpaceClass();33
Microsoft.Office.Interop.Owc11.ChChart ThisChChart = ThisChart.Charts.Add(0);34
Microsoft.Office.Interop.Owc11.ChSeries ThisChSeries = ThisChChart.SeriesCollection.Add(0);35
36
//显示图例37
ThisChChart.HasLegend = true;38
//标题39
ThisChChart.HasTitle = true;40
ThisChChart.Title.Caption = '统计图';41
42
//给定x,y轴图示说明43
ThisChChart.Axes[0].HasTitle = true;44
ThisChChart.Axes[1].HasTitle = true;45
ThisChChart.Axes[0].Title.Caption = '月份';46
ThisChChart.Axes[1].Title.Caption = '数量';47
48
//图表类型49
ThisChChart.Type = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypeColumnClustered3D;50
//旋转51
ThisChChart.Rotation = 360;52
ThisChChart.Inclination = 10;53
//背景颜色54
ThisChChart.PlotArea.Interior.Color = 'red';55
//底色56
ThisChChart.PlotArea.Floor.Interior.Color = 'green';57
58
ThisChChart.Overlap = 50;59
60
/**/////给定series的名字61
ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimSeriesNames,Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(),'日期');62
//给定分类63
ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimCategories,Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(),strCategory);64
//给定值65
ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimValues,Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(),strValue);66
//导出图像文件67
try68
{69
70
ThisChart.ExportPicture(Server.MapPath('chart.gif'),'gif',600,350);71
Response.Write( '<IMG SRC='' + Server.MapPath('chart.gif') + ''/>');72
}73
catch(Exception ee)74
{75
76
}77
78
// object [] objarr=new object[3];79
// objarr[0]=12;80
// objarr[1]=13;81
// objarr[2]=14;82
// DataTable dt=new DataTable();83
// dt.Columns.Add('id');84
// dt.Columns.Add('wei');85
// dt.Columns.Add('hei');86
// dt.Rows.Add(objarr);87
// DataSet ds=new DataSet();88
// ds.Tables.Add(dt);89
// Response.Write(this.toChartLine3(ds,'100','','adasd','sdasad','sadsadsa'));90
}91
92
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码93
override protected void OnInit(EventArgs e)94
{95
//96
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。97
//98
InitializeComponent();99
base.OnInit(e);100
}101
102
/**//// <summary>103
/// 设计器支持所需的方法 - 不要使用代码编辑器修改104
/// 此方法的内容。105
/// </summary>106
private void InitializeComponent()107
{108
this.Load += new System.EventHandler(this.Page_Load);109
110
}111
#endregion112
113
}114
}帮助OWCDCH11.CHM系统驱动器:\Program Files\Common Files\Microsoft Shared\Web Components\11\2052\OWCDCH11.CHM(但是必须安装office 2003)