表格控件Spread for ASP NET设置图表动态提示功能及跨表单公式
SpreadWeb5使用说明

For 5.0 使用指南使用指南简介 1使用指南简介Spread for 是一个综合性的、用于微软.NET平台的 应用程序开发的表格控件。
它集成了丰富的表格功能、工作表功能,并可以与多种数据源进行绑定。
一个Spread控件可以处理多达20亿个工作表,每个工作表可以有20亿行和20亿列,并且支持跨工作表的数据引用和跨工作表的公式引用。
Spread控件已经被业界公认为功能最为强大的表格控件。
Spread在中国也有了超过10年的使用历史,得到了许多软件开发人员的认可。
虽然Spread产品附带了大量的文档和示例代码,但不可否认的是,对于初次接触Spread的中国软件开发人员来讲,有时难免会觉得Spread入门不太容易。
本使用指南旨在帮助软件开发人员较快地了解和运用Spread的常用功能。
开发人员可以在了解Spread整体功能的基础上,循序渐进地学习单元格操作、行列操作和工作表操作。
每个操作都附带了具体的C#和VB代码,读者可以直接运行例子代码进行联系并查看效果。
在表格数据操作的基础上,本指南也针对高级数据操作、图形图表、以及和其他数据格式的交换方面做了进一步的介绍,并且在最后提供了常用词汇的中英文对照表,方便读者查看。
对于项目管理人员和技术主管来讲,通过对本指南中Spread主要功能的概览,可以帮助他们决策Spread是否适合于其项目的需要。
有关Spread产品的更多信息,请访问:Spread 产品网站/powertoolsSpread 技术支持论坛目录使用指南简介 (1)1.从例子入门:创建CHECKBOOK REGISTER (4)1.1添加S PREAD 控件到C HECKBOOK 工程 (4)1.2设置行和列 (4)1.3设置单元格类型 (7)1.4添加公式 (10)2.SPREAD产品介绍 (12)2.1产品概述 (12)2.2基本功能介绍 (13)2.3S PREAD 5.0 FOR 的主要新增功能 (18)3.单元格操作 (20)3.1设置单元格类型 (20)3.2设置单元格的颜色 (22)3.3合并单元格 (23)3.4锁定、解锁单元格 (25)3.5给单元格添加批注 (27)3.6设置公式 (28)4.行列操作 (30)4.1设置行列数 (30)4.2移动行列 (30)4.3调整行高、列宽 (30)4.4冻结行列 (31)4.5使用分组 (31)4.6定制行头、列头的文字 (32)4.7设置多行行头、多列列头 (33)5.工作表操作 (37)5.1使用当前工作表 (37)5.2设置背景色 (37)5.3增加工作表 (37)5.4删除工作表 (38)5.5显示或隐藏工作表 (39)5.6添加标题和子标题 (39)6.高级数据操作 (41)6.1数据绑定示例 (41)6.1.1把Spread添加到一个数据绑定项目 (41)6.1.2设置数据库链接 (41)6.1.3指定需要使用的数据 (42)6.1.4创建数据集 (43)6.1.5把Spread绑定到数据库 (43)6.1.6设置单元格类型,改善显示效果 (44)6.2数据排序 (45)6.3数据过滤 (46)6.3.1使用数据过滤 (46)7.与其他数据格式交互 (47)7.1打开E XCEL文件 (47)7.2保存为E XCEL文件 (47)7.3导出PDF (48)8.SPREAD 5 FOR 中英文术语对照 (50)1. 从例子入门:创建Checkbook Register1.1添加Spread 控件到Checkbook 工程创建一个新的Visual Studio .NET工程并命名为Checkbook。
动态生成表格的方法之asp.net技巧

动态生成表格的方法之技巧动态生成表格的方法之技巧动态生成表格的方法之技巧 Table控件动态生成表格操作实例(代码调试通过).aspxpowered by <form id="Form1" method="post" runat="server"><asp:Label id="Label1" style="Z-INDEX: 101; LEFT: 256px; POSITION:absolute; TOP: 40px" runat="server"> Table控件动态生成表格操作实例</asp:Label><asp:Button id="Button1" style="Z-INDEX: 105; LEFT: 272px; POSITION:absolute; TOP: 120px" runat="server"Text="生成"></asp:Button><asp:Table id="Table1" style="Z-INDEX: 104; LEFT: 272px; POSITION:absolute; TOP: 160px" runat="server"GridLines="Both"></asp:Table><asp:DropDownList id="DropDownList2" style="Z-INDEX: 103; LEFT:344px; POSITION: absolute; TOP: 88px"runat="server"><asp:ListItem Value="1">1列</asp:ListItem><asp:ListItem Value="2">2列</asp:ListItem><asp:ListItem Value="3">3列</asp:ListItem><asp:ListItem Value="4">4列</asp:ListItem><asp:ListItem Value="5">5列</asp:ListItem></asp:DropDownList><asp:DropDownList id="DropDownList1" style="Z-INDEX: 102; LEFT:280px; POSITION: absolute; TOP: 88px"runat="server"><asp:ListItem Value="1">1行</asp:ListItem><asp:ListItem Value="2">2行</asp:ListItem><asp:ListItem Value="3">3行</asp:ListItem><asp:ListItem Value="4">4行</asp:ListItem><asp:ListItem Value="5">5行</asp:ListItem></asp:DropDownList></form>.aspx.csprivate void Button1_Click(object sender, System.EventArgs e) {int numrows;int numcells;int i=0;int j=0;int row=0;TableRow r;TableCell c;//产生表格numrows=Convert.ToInt32(DropDownList1.SelectedValue);numcells=Convert.ToInt32(DropDownList2.SelectedValue);for(i=0;i<numrows;i++){r=new TableRow();if(row/2!=0){r.BorderColor=Color.Red;}row+=1;for(j=0;j<numcells;j++){c=new TableCell();c.Controls.Add(new LiteralControl("row"+j+",cell"+i));r.Cells.Add(c);}Table1.Rows.Add(r);}}实现提取数据到table中不用服务器控件1.后台方法public string id;public string usercode;public void tbalelist(string strsql){string str = string.Empty;DBCon OAcon = new DBCon();SqlConnection myConn = new SqlConnection(OAcon.getOAcon());myConn.Open();SqlCommand sc = new SqlCommand(strsql, myConn);SqlDataReader sr = sc.ExecuteReader();if(sr.Read()){id=sr[0].T oString();usercode = sr[1].T oString();}sr.Close();myConn.Close();}2.前台<table align="center" border="0" cellpadding="5" cellspacing="1" width="100%"><tr><td class="hback" width="5%"><font color="#cc3300"><b>ID</b></font></td><td class="hback" width="10%"><font color="#cc3300"><b>张号</b></font></td></tr><tr><td class="hback" width="5%"><%= id %></td><td class="hback" width="10%"><%= usercode %></td> </tr></table>。
表格控件Spread for ASP NET导入图表控件及添加事件

表格控件Spread for 导入图表控件及添加事件一、导入图表控件在日常办公总,使用Excel 会经常添加图表来使数据直观的展示出来。
Spread 兼容Excel 的巨大部分功能,当然,图表功能也是不可或缺的。
Spread 表格控件支持图表、波形图及条件格式化等多中数据可视化功能。
拼图下如何导入Excel 中的图表到Spread。
这里即阐述如何在 实现图表控件的导入。
详细操作步骤如下:1.使用Spread 打开Excel:1: this.FpSpread1.OpenExcel(this.Server.MapPath("ExcelChartI mport.xlsx"));2.如果Excel 中有多个图表,设置Excel 中各个图表都显示在第一个Sheet 中:1:2: for (int c = 0; c < FpSpread1.ActiveSheetView.C harts.Count; c++)3: {4:5: FpSpread1.ActiveSheetView.Charts[c].PageInd ex = 0;6: }3.在webconfig 文件中,添加图表配置节点。
1: <httpHandlers>2: <add path="FpChart.axd" verb="*" type="FarPoint.Web.Ch art.ChartImageHttpHandler" validate="true" />3: </httpHandlers>效果图如下:二、添加事件Spread for 中添加事件的方法十分简单方便-在前台的属性窗体中即可添加。
但是需要在后台重置Spread ,这样所有前台添加的事件都被重置。
这里我们介绍如何通过前台js 代码添加Spread 客户端事件。
SpreadJS类Excel表格控件单元格编辑事件分析

SpreadJS类Excel表格控件单元格编辑事件分析我们知道SpreadJS提供了60多个事件供开发者使用,这么多事件具体用哪一个,该怎么选择?只有了解了每个事件的触发时机和返回内容我们才能做出做好的选择。
下面我们讲解下有关编辑单元格内容的三个事件ValueChanged、RangeChanged和CellChanged。
1. ValueChangedOccurs when the value in the subeditor changes.当单元格的subeditor的值发生变化时触发。
也就是说当我们通过进入编辑状态改变单元格内容时将触发此事件。
事件中我们可以接收到sheet、sheetName、row、col、newValue和oldValue。
但是如果我们是复制,粘贴,拖拽生成内容,并不会触发ValueChanged事件。
不触发ValueChanged有两个原因,一方面复制粘贴是用户的操作行为,ValueChanged是数据相关的事件,另一方便,复制粘贴等行为可以是区域性的,如果区域内每个单元格都发送事件是对性能的很大损耗。
那我们想要接受到用户复制粘贴操作带来的单元格内容变化可以使用下面的事件。
2. RangeChangedOccurs when the cell range has changed.这里的cell range change 并不是说选择区域发生了变化,而是指一个区域内的数据发生了变化,选择区域发生变化的事件是SelectionChanged。
用户的粘贴,拖拽填充,移动以及直接Delete删除都会触发RangeChanged 事件。
当用户对区域操作一次只触发一次。
在时间中我们可以接收到sheet, sheetName, row, column, rowCount, columnCount, changedCells, action信息。
通过action我们可以知道是何种操作导致的事件。
表格控件Spread for ASP NET如何进行过滤操作

表格控件Spread for 如何进行过滤操作Spread 的过滤方式很多,包括基本过滤、过滤条和类似于Microsoft Excel 的过滤方式。
基本过滤方式在Spread for 7 之前提供,现在我们提供了过滤条和类似Excel 过滤方式,这无疑增加的Spread 和Excel 的兼容性。
表格控件Spread for 7 可以实现数据过滤,基本步骤为创建过滤,分配过滤到指定列。
同时,您可以定制过滤行和非过滤行背景色。
下面我们就来详细叙述如何实现过滤:1.设置基本过滤,您可以定制过滤来增强用户体验。
使用表单行过滤。
您可以在特定列中进行过滤,从而只显示符合条件的行,同时您还可以定制这些行的外观。
您可以使用基本的过来功能,同时您也可以轻松实现自定义过滤。
2.设置过滤条过滤,此过滤方式是Spread for 7 中新增功能,实现过滤条过滤我们需要结合FilterBarCellType 来设置过滤条的数据类型。
当过滤模式被设置为FilterBar 时,每一列的列头下方都会生成过滤器。
您可以当前列属性设置过滤条件。
在点击过滤按钮后,Spread 自动过滤符合条件的行。
3.Excel 样式过滤,此过滤方式是Spread for 7 中新增功能。
需要结合FilterColumnDefinition 实现。
只显示符合过滤条件的行,自动隐藏其他行。
执行过滤之后,您可以复制、查找、编辑、格式化、生成图表,并且您可以在无需重新排列或移动的条件下打印过滤数据子集。
您也可以在多列基础上进行排序。
过滤功能是可以叠加使用的,这就意味着每个过滤条件都是在当前过滤结果的基础上进行过滤的。
最后让我们一起来看下各种过滤的效果:基本过滤:过滤条过滤:Excel 样式过滤:以上就是所有内容。
表格控件Spread for ASP NET如何使用公式操作及CallBack方法

表格控件Spread for 如何使用公式操作及
CallBack方法
一、如何使用公式操作
Spread 表格控件的公式计算引擎有三百多种内置函数,并支持通过内置函数和运算符来自定义公式。
同时,Spread for 支持客户端自动计算、客户端编辑公式以及跨表单公式。
下面我们来看看如何进行公式操作。
首先我们来看下公式的基本使用方法,测试代码如下:
设置客户端自动计算功能:
设置跨表单公式方法如下,通过表单索引进行跨表单公式设置:
效果图如下:
二、如何使用CallBack方法
Spread for 表格控件在前台提供了Callback 方法用于调用后台Command 事件,通过这个事件我们就可以根据前台的用户行为调用后台的Spread 丰富的接口去操作Spread。
下面我们以捕获前台用户鼠标单击事件为例进行功能描述。
1.后台添加Cell的onclick 事件:
Spread 表格控件渲染到前台后是以HTML Table 进行展示的。
后台代码如下:
前台代码:
2.前台获取Spread DOM 节点,并且调用CallBack 方法:
3.添加ButtonCommand 事件,在CallBack 事件中获取单元格信息。
以上就是Spread for 使用公式操作及CallBack的具体方法。
微软图表控件MsChart使用指南

微软图表控件MsChart使用指南昨天在网上看到了微软发布了.NET 3.5框架下的图表控件,第一时间抓下来看了一下,发觉功能很强劲,基本上能想到的图表都可以使用它绘制出来,给图形统计和报表图形显示提供了很好的解决办法,同时支持Web和WinForm两种方式,不过缺点也比较明显,只能在最新的开发环境中使用,需要.Net 3.5 Sp1以及VS 2008的开发环境。
下面是下载地址:mework 3.5)–1.包含英文版,中文版。
上面提供的链接是中文版的,可以更改为英文版。
2.语言包:Microsoft Chart Controls for Microsoft .NETFramework 3.5 Language Pack3.Microsoft .NET Framework 3.5 的Microsoft 图表控件的语言包,包含23中语言。
4.Microsoft Chart Controls Add-on for Microsoft Visual Studio 2008–这个只有英文的,没找到中文的。
5.文档(Microsoft Chart Controls for .NET Framework Documentation)–这个只有英文的,没找到中文的。
6.WinForm 和的例子(Samples Environmentfor Microsoft Chart Controls)–这个只有英文的,没找到英文的。
7.Demo 下载:/mschart下了它的示例程序后,运行了一下,非常的强大,可以支持各种各样的图形显示,常见的:点状图、饼图、柱状图、曲线图、面积图、排列图等等,同时也支持3D样式的图表显示,不过我觉得最有用的功能还是支持图形上各个点的属性操作,它可以定义图形上各个点、标签、图形的提示信息(Tooltip)以及超级链接、Jav ascript动作等,而不是像其它图形类库仅生成一幅图片而已,通过这些,加上微软自己的Ajax框架,可以建立一个可以互动的图形统计报表了。
.NET4.0 表格控件

4.0 表格控件
表格控件有三个控件组成,包括HtmlTable控件、HtmlTableRow控件和HtmlTable控件。
其中HtmlTable控件用来控制<table>元素。
在HTML中,<table>用来建立一个表格。
HtmlTableCell控件用来控制<td>和<th>元素。
在HTML中,这些元素用来建立表格单元格和表格标题单元格。
HtmlTableRow控件用来控制<tr>元素。
在HTML中,<tr>元素用来建立表格行。
HtmlTable控件可以配合HtmlTableRow 以及HtmlTableCell控件来动态的产生表格。
表格控件之间的关系可以这样认为:HtmlTable控件是由许多列(Row)所组成,而每一列中是由许多储存格(Cell)所组成。
所以HtmlTable控件中有Rows集合,HtmlTableRow控件中有Cells集合。
我们依秩序利用HtmlTableRow中Cells集合的Add方法,将HtmlTableCell控件串成一列(Row)后,再将这一列加到HtmlTable 的Rows集合中,这样一来表格就大功告成了。
下面是一个使用表格控件生成表格的实例,代码如下所示。
执行上述代码,如图4-21所示,在文本框中输入要生成表格的行数与列数,单击“生成表格”按钮,如图4-22所示。
图4-21 执行结果图4-22 生成表格。
如何使用表格控件Spread for ASP NET图表功能

series.CategoryNames.Add("服装"); series.CategoryNames.Add("家具"); belVisible = true;
3.设置 YPlotArea
FarPoint.Web.Chart.YPlotArea plotArea = new FarPoint.Web.Chart. YPlotArea(); //设置显示单位为 20% plotArea.YAxes[0].DisplayUnits = 0.5; //设置 Y 轴显示为 Percentage plotArea.YAxes[0].LabelNumberFormat = "00.0%"; //设置 YPlotArea 显示位置 plotArea.Location = new System.Drawing.PointF(0.2F, 0.2F); //设置 YPlotArea 大小 plotArea.Size = new System.Drawing.SizeF(0.6F, 0.6F); plotArea.Series.Add(series);
以上就是 Spread 图表功能的使用方法,希望帮egend legend.Location = legend.AlignmentX legend.AlignmentY = new LegendArea(); new PointF(0.98f, 0.5f); = 1.0f; = 0.5f;
5.设置标签
LabelArea label = new LabelArea(); label.Text = "产品分布"; label.Location = new PointF(0.5f, 0.02f); label.AlignmentX = 0.5f; label.AlignmentY = 0.0f;
(大数据)ASPNET五大数据控件

(大数据)ASPNET五大数据控件数据绑定控件比较(Reapter\DataList\GridView\DatailsView\FormView):1.插入功能方面:DetailsView和FormView具有插入功能,其它控件没有2.模板DataList\FormView\Repeater三种必须编辑模板,而GridView和DetailsView只有在将列转换成模板列以后才会出现各种模板.3.自动分页功能GridView ,DetailsView和FormView都是2.0版本新增控件,内置了分页,排序等等功能,其他需要手工定义4.数据呈现方式:GridView,DataList,Repeator用于呈现多列数据,DetailsView,FormView用于呈现单列数据,即常用的数据明细.DataList和Reapter都需要编辑模板列,而在模板列当中可以添加TextBox,同时可以指定TextBox的ID从而实现提取用户输入的值,但是DataGrid和GridView两个件是不需要编辑模板的,它的编辑功能是自动生成的我们无法知道那些文本框的ID,也就无法通过ID来获取用户的输入,那么可以通过对单元格的引用来实现:private void DataGrid1_UpdateCommand(object source,xx){string bkid=DataGrid1.DataKeys[e.Item.ItemIndex].toString();//提取主键string bktitle=((TextBox)e.Item.Cells[1].Controls[0]).Text;//提取用户的输入}一.进入编辑状态:DataList1.EditItemIndex = e.Item.ItemIndex;DataGrid1.EditItemIndex = e.Item.ItemIndex;GridView1.EditIndex = e.NewEditIndex;DetailsView1.ChangeMode(DetailsViewMode.Edit);//进入编辑状态DetailsView1.ChangeMode(DetailsViewMode.ReadOnly);//退出编辑状态二.设置主键:DataList1.DataKeyField = "bkid";DataGrid1.DataKeyField = "bkid";string[] str={"bkid"};GridView1.DataKeyNames = str;三.提取主键:string bkid = DataList1.DataKeys[e.Item.ItemIndex].ToString();//DataListstring bkid = DataGrid1.DataKeys[e.Item.ItemIndex].ToString();//DataGridstring bkid = GridView1.DataKeys[e.RowIndex].Value.ToString();//GridViewstring bkid = DetailsView1.DataKey[0].ToString();四.查找控件:string bktitle = ((TextBox)e.Item.FindControl("txtTile")).Text;//DataListstring bktitle = ((TextBox)e.Item.Cells[1].Controls[0]).Text;//DataGridstring bktitle = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text;string bktitle = ((TextBox)DetailsView1.Rows[1].Cells[1].Controls[0]).Text;注意查找控件有两种方法:(各数据绑定控件的都可以用下面两种方法进行查找)1.如果知道控件的ID可以用这种方法((TextBox)e.Item.FindControl("txtTile")).Text;//这是查找2.如果不知道控件的ID可用这种方法((TextBox)e.Item.Cells[1].Controls[0]).Text;//这是索引五.给删除按钮添加确认:protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e) {if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){LinkButton lbtn =(LinkButton) e.Item.FindControl("lbtndelete");lbtn.Attributes.Add("OnClick","return confirm(‘确定要删除吗?‘)");}}protected void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e) {if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem){LinkButton lbtn = (LinkButton)e.Item.Cells[3].Controls[0];lbtn.Attributes.Add("OnClick","return confirm(‘确认删除?‘)");}}protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) {if(e.Row.RowType== DataControlRowType.DataRow){string strid = e.Row.Cells[0].Text;//获取第一行的字段值;e.Row.Cells[3].Attributes.Add("OnClick", "return confirm(‘确认删除\""+strid+"\"?‘)");//用了两个转义符将第一列的值用引号括起来,注意转义符后面一个将不被解释,是直接放上去;}} 程序中常用的三十三种代码(1)1. 打开新的窗口并传送参数:传送参数:response.write("<script>window.open(’*.ASP x?id="+this.DropDownList1.SelectIndex+"&id1="+...+"’)</script>") 接收参数:string a = Request.QueryString("id");string b = Request.QueryString("id1");2.为按钮添加对话框Button1.Attributes.Add("onclick","return confirm(’确认?’)");button.attributes.add("onclick","if(confirm(’are you sure...?’)){return true;}else{return false;}")3.删除表格选定记录int intEmpID = (int)MyDataGrid.DataKeys[e.Item.ItemIndex];string deleteCmd = "DELETE from Employee where emp_id = " +intEmpID.ToString()4.删除表格记录警告private void DataGrid_ItemCreated(Object sender,DataGridItemEventArgs e) {switch(e.Item.ItemType){case ListItemType.Item :case ListItemType.AlternatingItem :case ListItemType.EditItem:TableCell myTableCell;myTableCell = e.Item.Cells[14];LinkButton myDeleteButton ;myDeleteButton = (LinkButton)myTableCell.Controls[0];myDeleteButton.Attributes.Add("onclick","return confirm(’您是否确定要删除这条信息’);");break;default:break;}}5.点击表格行链接另一页private void grdCustomer_ItemDataBound(object sender,System.Web.UI.WebControls.DataGridItemEventArgs e){//点击表格打开if (e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem)e.Item.Attributes.Add("onclick","window.open(’Default.aspx?id=" + e.Item.Cells[0].Text + "’);");} 双击表格连接到另一页在itemDataBind事件中if(e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem){string OrderItemID =e.item.cells[1].Text;...e.item.Attributes.Add("ondblclick","location.href=’../ShippedGrid.aspx?id=" + OrderItemID + "’"); <> 程序中常用的三十三种代码(2) }双击表格打开新一页if(e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem){string OrderItemID =e.item.cells[1].Text;...e.item.Attributes.Add("ondblclick","open(’../ShippedGrid.aspx?id=" + OrderItemID + "’)");}6.表格超连接列传递参数<asp:HyperLinkColumn Target="_blank" headertext="ID号"DataTe xtField="id" NavigateUrl="aaa.aspx?id=’<%# DataBinder.Eval(Container.DataItem, "数据字段1")%>’ & name=’<%# DataBinder.Eval(Container.DataItem, "数据字段2")%>’ />7.表格点击改变颜色if (e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem){ e.Item.Attributes.Add("onclick","this.style.backgroundColor=’#99 cc00’;this.style.color=’buttontext’;this.style.cursor=’default’;");} 写在DataGrid的_ItemDataBound里if (e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem){ e.Item.Attributes.Add("onmouseover","this.style.backgroundColor=’# 99cc00’;this.style.color=’buttontext’;this.style.cursor=’default’;");e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=’’;t his.style.color=’’;");} 8.关于日期格式日期格式设定DataFormatString="{0:yyyy-MM-dd}"我觉得应该在itembound事件中e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd"))9.获取错误信息并到指定页面不要使用Response.Redirect,而应该使用Server.Transfere.g// in global.asaxprotected void Application_Error(Object sender, EventArgs e) {if (Server.GetLastError() is HttpUnhandledException)Server.Transfer("MyErrorPage.aspx");//其余的非HttpUnhandledException异常交给自己处理就okay了 :) } Redirect会导致post-back的产生从而丢失了错误信息,所以页面导向应该直接在服务器端执行,这样就可以在错误处理页面得到出错信息并进行相应的处理10.清空Cookie<> 程序中常用的三十三种代码(3)Cookie.E XP ires=[DateTime];Response.Cookies("UserName").Expires = 011.自定义异常处理//自定义异常处理类using System;using System.Diagnosti CS;namespace MyAppException{ /// <summary>/// 从系统异常类ApplicationException继承的应用程序异常处理类。
表格控件Spread for ASP NET使用拼接方法设置公式

表格控件Spread for 使用拼接方法设置公式鉴于论坛中有很多用户提出如何在后台拼接公式,下面给出实现方法:protected void Page_Load(object sender, EventArgs e){if (IsPostBack){return;}FpSpread1.Sheets[0].ReferenceStyle = FarPoint.Web.Sp read.Model.ReferenceStyle.R1C1;this.FpSpread1.ClientAutoCalculation = true;this.FpSpread1.Sheets[0].Cells[0, 2].Tag = "单价"; this.FpSpread1.Sheets[0].Cells[1, 3].Tag = "数量"; this.FpSpread1.Sheets[0].Cells[2, 3].Tag = "总金额"; FarPoint.Web.Spread.Cell _unitPrice = this.FpSpread 1.Sheets[0].GetCellFromTag(this.FpSpread1.Sheets[0].Cells[0, 0], "单价");FarPoint.Web.Spread.Cell _quantity = this.FpSpread1. Sheets[0].GetCellFromTag(this.FpSpread1.Sheets[0].Cells[0, 0], "数量");FarPoint.Web.Spread.Cell _toalPrice = this.FpSpread 1.Sheets[0].GetCellFromTag(this.FpSpread1.Sheets[0].Cells[0, 0], "总金额");this.FpSpread1.Sheets[0].AllowUserFormulas = true; string formula = "PRODUCT(" + "R" + (_unitPrice.Row. Index + 1).ToString() + "C" + (_unitPrice.Column.Index + 1).ToString() + "," + "R" + (_quantity.Row.Index + 1).ToString() + "C " + (_quantity.Column.Index + 1).ToString() + ")";_toalPrice.Formula = formula;}复制代码以上就是后台拼接公式的方法和代码,希望帮到你。
spread 部分技巧

DataOnly:只保存数据,不包括格式。
SaveAlternatingRowStyles:保存间隔行样式。
如果你想导出 Spread 文件到开放的 XML 文件,代码应这样设置:
System.IO.MemoryStream ms = new System.IO.MemoryStream();
FpSpread1.SaveExcel(ms, eOOXMLFormat);
base.Render(writer);
}
}
7. 设置锁定单元格内容 (通过移除锁定单元格的 “FpCellType” 属性,这个属性包含单元格锁定的信息,然后对单元格的内容进行设定,最后重新锁定单元格。
)
代码演示:
服务端代码
fpSpread1.ActiveSheetView.Columns(0).Locked=True
Response.BinaryWrite(ms.ToArray());
ms.Flush();
ms.Close();
Response.End();
1.在第 1、2 行代码,我们创建了 MemoryStream 的实例对象,然后把它传递给 SaveExcel() 方法。如果我们想把 Spread 保存到开放的 XML 文件,可以应 用 "UseOOXMLFormat" 保存标记。
4.在客户端代码中,你可以通过函数定制可以排序的列(在Attribute中添加的函数),相应的调用后台代码的排序函数。
5.怎样在客户端导出 Spread 到 Excel 文件
System.IO.MemoryStream ms = new System.IO.MemoryStream();
如何激活表格控件Spread for WinForms教程

如何激活表格控件Spread for WinForms教程
本篇文章将为您阐述如何激活Spread for WinForms表格控件。
1.在开始菜单中打开许可证管理工具:
注:如果在开始菜单中无法找打许可证管理工具,您可以从以下路径中打开Program Files (x86)\Common Files\GrapeCity\Components
2.打开许可证管理工具后,找到Spread 对应项,点击下图中激活按钮:
3.确认激活界面点击下一步进行激活:
4.弹出的界面需要输入您真实的用户名、公司名称、邮箱和序列号后,点击下一步进行激活:
5.许可证管理工具连接服务器,激活过程需要10秒左右,这期间需要保持网络畅通。
6.弹出以下界面表示产品已经成功激活。
以上即为Spread产品激活的步骤。
WInfrom Spread 应用属性大全

eMax = true;//为第一个表单设置PrintInfo属性。
fpSpread1.Sheets[0].PrintInfo = printset;//打印表单。
fpSpread1.PrintSheet(0);&#160;自定义打印功课设置若是你没有指定其他打印机的话,表单会应用你的Windows体系景象中当前的默认打印机进行打印。
你可以在随便率性支撑Windows的打印机上打印表单。
你可以自定义的打印功课设置项包含打印机、纸张起原、以及纸张大小。
相对应的,可以设置PrintInfo对象中的Printer,PaperSource,或PaperSize属性。
下面的示例代码从一个复选框中选择了纸张起原,并在打印所有表单前设置了纸张的大小。
private void Form1_Load(object sender, System.EventArgs e){int i;System.Drawing.Printing.PrinterSettings ps = newSystem.Drawing.Printing.PrinterSettings();for (i = 0; i <= ps.PaperSources.Count - 1; i++){comboBox1.Items.Add(ps.PaperSources[i].SourceName);}comboBox1.Text = ps.PaperSources[0].SourceName;}private void button1_Click(object sender, System.EventArgs e{FarPoint.Win.Spread.PrintInfo pi = newFarPoint.Win.Spread.PrintInfo();System.Drawing.Printing.PrinterSettings ps = newSystem.Drawing.Printing.PrinterSettings();pi.PaperSize = new System.Drawing.Printing.PaperSize("Letter",600, 300);pi.PaperSource = ps.PaperSources[comboBox1.SelectedIndex];fpSpread1.Sheets[0].PrintInfo = pi;fpSpread1.PrintSheet(-1);}自定义打印页眉或页脚你可以在打印页面上显示页眉和页脚。
FarPoint Spread 组件的一些简单操作

Spread 的简单操作桃花心木(原创)最近公司接了一个小日本的项目---报表输出系统。
由于小日本对Excel用的出神入化,所以想要所有的事情都能通过Excel表现出来。
我们目前做的项目,涉及对报表数据的大量操作并要求可以设置报表的样式,因此小日本想要让我们将报表通过网页形式的Excel表现出来,并可以像微软的Excel一样。
微软的Excel是非常强大的,想要和Excel一模一样是不大可能的,因此只能模拟Excel,实现一些基本的样式设置。
我在网上查了很多资料,但大都是页面加载后样式便已经设定,而我们想要实现的功能是可以在网页上动态的修改报表的样式。
接下来我主要介绍通过一款Spread控件实现模拟网页Excel并可以实现一些简单的常用的样式设置。
设置的样式包括:设置字体的颜色、大小、粗细、下划线、斜体、居中样式等;设置单元格的背景色;设置边框颜色;拆分合并单元格;增加行和列;边框删除;导入导出Excel;复杂数据输入向导;输入值在固定位置的显示等等。
下面进入正题。
首先,我们需要下载Spread控件(下载测试版即可),并将其安装在本机上。
接下来是将安装好的FpSpread控件添加到Visual Studio 2010的Web Form程序。
添加的过程包括下面几步。
你可以打开一个已经存在的网站或者创建一个新的。
第一步运行Visual Studio 2010.第二步创建一个新的网站。
第三步将FpSpread控件添加到工具箱中。
这只需要做一次,以后不必重复添加。
1. 如果工具箱不可见,可以从视图菜单选择工具箱。
2. 一旦工具箱可见,查看是否有GrapeCity类别(或者在其他的类别下面,如果你已经安装了Spread 并将它放在了不同的工具箱图标下)。
3. 如果FpSpread控件不在工具箱中,鼠标右击工具箱,选择【选择项】,在弹出对话框中选择【.NET Framework 组件】选项卡。
在【.NET Framework 组件】选项卡的选择项列表中选中名称为FpSpreadTemplateReplacement、FpSpread、FpChart的选项,点击【确定】按钮,便可以在工具箱中看到一个名为GrapeCity Spread类别的新类别。
表格开发控件SpreadJS单元格数据绑定

for (var i = 1; i < sheet.getColumnCount() - 2; i++) { sheet.setColumnWidth(i, 80); } sheet.setColumnWidth(1, 110); sheet.setColumnWidth(2, 90); sheet.setRowHeight(0, 40, GcSpread.Sheets.SheetArea. colHeader); sheet.isPaintSuspended(false); }
3.初始化 Source
function initDataSourceBind(sheet) { sheet.isPaintSuspended(true); sheet.setName("SourceForm"); sheet.autoGenerateColumns = false; sheet.setDataSource(getProducts(100)); var lineCellType = new boBoxCellT ype(); lineCellType.items(_lines); var colorCellType = new boBoxCell Type(); colorCellType.items(_colors); var checkBoxCellType = new GcSpread.Sheets.CheckBoxC ellType(); var ratingCellType = new boBoxCel lType(); ratingCellType.items(_ratings); var cis = [ { name: "id", displayName: "ID", size: 25 }, { name: "name", displayName: "Name", size: 100 }, { name: "line", displayName: "Line", cellType: l ineCellType, size: 80 }, { name: "color", displayName: "Color", cellType: colorCellType }, { name: "price", displayName: "Price", formatte r: "0.00" }, { name: "cost", displayName: "Cost", formatter: "0.00" }, { name: "weight", displayName: "Weight", formatt erHale Waihona Puke "0.00" },
Spreadsheet说明

Spreadsheet说明Spreadsheet说明OWC.11 控件帮助文件及控件下载(Spreadsheet /图表/ACCESS 数据访问页/数据透视表) Spreadsheet, 图表, 控件, OWC, ACCESS 关于Spreadsheet 对象的方法、事件、属性本文转自:/thread-52327-1-1.html 控件与操作指南,编程指南都可以在C:\Program Files\Common Files\Microsoft Shared\Web Components\11\2052 下面找到。
如果你没有完全安装,那么,可以在下面下载这个控件以及帮助文件。
Spreadsheet 介绍:如何在网上办公?如果你的机器没有装EXCEL怎么办?那就可以用到Spreadsheet 控件了、Spreadsheet 控件几乎可以支持所有的EXCEL 函数计算,也可以进行数组公式输入,完全合适在无OFFICE平台上当做一个MINI EXCEL来用。
******************* 属性:*******************1、ActiveCell:返回代表活动单元格的Range只读对象。
2、ActiveSheet:返回代表活动工作表的WorkSheet只读对象。
3、ActiveWindow:返回表示当前窗口的Window对象。
4、ActiveWorkbook:返回表示打开工作簿的Workbook对象。
5、AllowPropertyT oolbox:确定用户是否可以在运行时显示“命令和选项”对话框。
boolean类型。
6、Application:有两种情况, a)应用于OWCLanguageSettings 对象时,返回表示指定Web Component的Obejct对象; b)返回表示电子表格控件的Spreadsheet对象7、AutoFit:对于Spreadsheet或者PivotTable对象,如果由可见的行列数确定电子表格的总体大小,则设置为True。
Spread用法及其注意事项

Spread用法及其注意事项1.获取活动单元格的行索引和列索引introwindex=fpspread1。
活动表。
activerowindex;intcolumnindex=fpspread1。
活动表。
活性柱指数;2.列、单元格锁定这第1页。
活动表。
列[0,4]。
locked=true;//锁定此FPSD1的列范围。
活动表。
列[0]。
locked=true;//锁定单个列也可以直接通过spread designer进行编辑和设置3.下拉框一般只在编辑模式下显示操作方法是选择排列---按钮拖动模式---总是编辑按钮4.spread去掉网格线5.有时该值不能为空。
参数名称:key解决方式就是将数据绑定到spread上,而不是数据表上。
6.设置传播的只读模式frm.fpspread1.activesheet.operationmode=farpoint.win.spread.operationmode.read only;7.列不使用数字表示通常的形式都是写成数字表示的形式fpspread1_uu1。
细胞[i,7]。
文本但是为了防止程序过多的变化,可以写成fpspread1_uu1。
单元格[i,fpspread1\U表1.列[\]。
索引]。
文本但是,前提是将列名设置为大写8.spread中通常数字零值不显示选择sheet并将displayzero设置为false9.通常情况下都要将spread设置成自适应的形式10.排列设置行数、列数、行标题数、列标题数,以及行标题和列标题的显示如果需要对某一列进行列头的编辑,首先选中一列,然后右键选择“headers?”,进入编辑模式,可以进行列头文字的编辑,行、列的合并等操作。
11.通常,扩展模式是全局绑定模式。
在本例中,label是列的名称,tag是与数据库对应的字段。
这样,就不需要设置顺序,程序将根据标签自动绑定12.对表单的操作―对行,列操作(1)添加行fpspread1.sheets[0].rows[0].add();//在第1行之前插入一行fpspread1.sheets[0].rows.add(0,1);fpspread1.sheets[0].addrows(0,1);(2)删除行第1页。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
表格控件Spread for 设置图表动态提示功能及
跨表单公式
一、设置图表提示功能
在Spread 表格控件中插入图表是很典型的使用场景。
这里我将向大家展示如何实现图表的动态提示功能。
图表在前台被渲染成图片,所以我们需要添加HTTPHandlers 确保它在前台正确工作。
<httpHandlers>
<add path="FpChart.axd" verb="*" type="FarPoint.Web.Chart.Ch artImageHttpHandler"
validate="true" />
</httpHandlers
通过以下代码添加SpreadChart:
FpSpread1.Sheets[0].AddChart(0, 0, typeof(FarPoint.Web.Chart.Ba rSeries), 600, 600, 50, 50, FarPoint.Web.Chart.ChartViewTyp e.View3D, true);
接下来,我们将要实现动态提示功能了。
实现方法其实很简单,设置AutoGenerateMapAreaToolTip 属性为true后,图表会自动生成提示。
RenderMapArea属性设置为True是图表将以Map 形式进行渲染。
FpSpread1.Sheets[0].Charts[0].RenderMapArea = true;
FpSpread1.Sheets[0].Charts[0].AutoGenerateMapAreaToolTip = tru e;
FpSpread1.Sheets[0].Charts[0].HotSpotMode = HotSpotMode.Inactiv e;
效果图如下:
二、设置跨表单公式
1.设置Spread ClientAutoCalculation 属性使Spread 在客户端自动计算1: this.FpSpread1.ClientAutoCalculation = false;
2.设置单元格公式:
1: this.FpSpread1.Sheets[1].Cells[0, 0].Formula = "sheet1!A2+sheet1! A1";
效果图:
以上就是实现图表的动态提示功能和跨表单公式的方法,希望能帮到你。