简要说明一下spread的用法:
1, 在调用的.aspx页面开头注册:
"FarPoint.Web.Spread" Assembly="FarPoint.Web.SpreadJ, Version=2.0.1.0, Culture=neutral, PublicKeyToken=a5fa960294d899e7" %>
2,将控件加入到.aspx页面中:
3,页面对应的cs文件中加入对应的方法:
a, 向表中加入数据
//声明数据类对象
FarPoint.Web.Spread.Model.ISheetDataModel model;
//new一个M行N列的添充数据对象
model = new FarPoint.Web.Spread.Model.DefaultSheetDataModel(M, N);
//向i行j列的添充数据
model.SetValue(i, j, “String”);
//向i列的表头添加名称
FpSpread1.ActiveSheetView.ColumnHeader.Cells[0, i].Text = "数字";
//鼠标双击任意列的表头就可对那一列为关键值排序
FpSpread1.ActiveSheetView.AllowSort = true;
FpSpread1.ActiveSheetView.SetColumnSortIndicator(0, FarPoint.Web.Spread.Model.SortIndicator.Descending);
//表中向i行j列加入ComboBox列并能读取数据和选择功能。FarPoint.Web.Spread.ComboBoxCellType cb=new FarPoint.Web.Spread.ComboBoxCellType(new string[] {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k"}, new string[] {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k"});
cb.ShowButton=true;
FpSpread1.Sheets[0].Cells[4, 2].CellType = cb;
//表中向k行第一列加入CheckBox列
FarPoint.Web.Spread.CheckBoxCellType ckb = new FarPoint.Web.Spread.CheckBoxCellType("Select", "Selected");
FpSpread1.Sheets[0].Cells[k, 0].CellType = ckb;
// 在spread的第一个Sheets中i行j列的取得数据对象
FpSpread1.Sheets[0].Cells[i, j].Text;
4,要在spread中显示各种控制图标:在spreadsort目录下有个目录fp_client设置为IIS的虚拟目录就可以了!
设置行数列数
FpSpread1.ActiveSheetView.ColumnCount = 3;
FpSpread1.ActiveSheetView.RowCount = 11;
分页
FpSpread1.ActiveSheetView.AllowPage = false;
列宽
FpSpread1.ActiveSheetView.Columns[0].Width = 160;
FpSpread1.ActiveSheetView.Columns[1].Width = 200;
FpSpread1.ActiveSheetView.Columns[2].Width = (int)(FpSpread1.Width.Value - 360 - FpSpread1.RowHeader.Width - 2);
指定单元格的读取和赋值
FpSpread1.ActiveSheetView.Cells[0, 1].Text = "Custom Cell Editor/Renderer";
FpSpread1.ActiveSheetView.Cells[0, 2].Text = "Values from editor are RGB of BackColor";
指定控件区域大小
FpSpread1.Height = Unit.Pixel(300);
FpSpread1.Width = Unit.Pixel(763);
设置列的类型
FarPoint.Web.Spread.CheckBoxCellType objIntCell = new FarPoint.Web.Spread.CheckBoxCellType();
FpSpread1.Sheets[0].Columns[0].CellType = objIntCell;
定义边框部分
FpSpread1.BorderColor = Color.Green;
FpSpread1.BorderStyle = BorderStyle.Dashed;
FpSpread1.BorderWidth = System.Web.UI.WebControls.Unit.Pixel(4);
添加一个新的工作表
FarPoint.Web.Spread.SheetView newsheet = new FarPoint.Web.Spread.SheetView();
newsheet.SheetName = "North";
newsheet.ColumnCount = 10;
newsheet.RowCount = 100;
然后把刚才的工作表加到控件中
FpSpread1.Sheets.Add(newsheet);
移除一个工作表
FpSpread1.Sheets.Remove(FpSpread1.Sheets[1]);
指定一个工作表是否显示
FpSpread1.Sheets[1].Visible = false;
为指定的工作表设置背景
FpSpread1.Sheets[0].BackColor = Color.LightYellow;
设置页大小陈列15行 (不明白)
FpSpread1.ActiveSheetView.PageSize = 15;
指定网格线的样式
FpSpread1.Sheets[0].GridLineColor = Color.Red;
FpSpread1.Sheets[0].GridLines = GridLines.Horizontal;
定制工作表的角落 (不明白)
FpSpread1.Sheets[0].SheetCornerStyle.BorderColor = Color.Green;
FpSpread1.Sheets[0].SheetCornerStyle.BorderStyle = BorderStyle.Dashed;
FpSpread1.Sheets[0].SheetCornerStyle.BorderWidth = 4;
为工作表指定使用哪个皮肤
FarPoint.Web.Spread.DefaultSkins.Colorful2. Apply(FpSpread1.Sheets[0]);
自定义皮肤,并赋予工作表
FarPoint.Web.Spread.SheetSkin myskin = new FarPoint.Web.Spread.SheetSkin("MySkin", Color.BlanchedAlmond, Color.Bisque, Color.Navy, 2, Color.Blue, GridLines.Both, Color.Beige, Color.BurlyWood, Color.AntiqueWhite, Color.Brown, Color.Bisque, Color.Bisque, true, true, true, true, false);
myskin.Apply(FpSpread1.Sheets[1]);
增加行列数
FpSpread1.Sheets[0].AddColumns(6,2);
移除行列
FpSpread1.Sheets[0].RemoveRows(6,2);
设置工作表中指定行列显示或者隐藏
FpSpread1.Sheets[0].SetRowVisible(1, false);
FpSpread1.Sheets[0].SetColumnVisible(2, false);
设置工作表默认行高列宽,以及单独指定行号列宽
FpSpread1.Sheets[0].DefaultColumnWidth = 50;
FpSpread1.Sheets[0].Columns[1].Width = 100;
设置TopRow
SheetView.TopRow = 4;
创建多个不同的行模板
以下是设置行模板为3,第一行是默认样式 然后为第二 三行赋予新的样式 下面的行将重复此样式FpSpread1.Sheets[0].AlternatingRows.Count = 3;
FpSpread1.Sheets[0].AlternatingRows[1].BackColor = Color.LightBlue;
FpSpread1.Sheets[0].AlternatingRows[1].ForeColor = Color.DarkBlue;
FpSpread1.Sheets[0].AlternatingRows[2].BackColor = Color.Orange;
FpSpread1.Sheets[0].AlternatingRows[2].ForeColor = Color.DarkRed;
行扩充的处理 如果一行有有过多的数据 这些属性可以显示的样式
GetRowExpandable SetRowExpandable
设置固定行的样式 首先定义一个样式
FarPoint.Web.Spread.StyleInfo darkstyle = new FarPoint.Web.Spread.StyleInfo();
darkstyle.BackColor = Color.Teal;
darkstyle.ForeColor = Color.Yellow;
然后将这个新样式设置到列头区域
FpSpread1.ActiveSheetView.ColumnHeader.DefaultStyle = darkstyle;
设置列头显示或者隐藏
FpSpread1.Sheets[0].ColumnHeader.Visible = false;
设置列头文本
FpSpread1.Sheets[0].ColumnHeader.Columns[0].Label = "North";
FpSpread1.Sheets[0].ColumnHeader.Columns[1].Label = "South";
定制行列头区域空的部分
FarPoint.Web.Spread.SheetView sv = FpSpread1.ActiveSheetView;
sv.HeaderGrayAreaColor = Color.Red;
设置行列头数
FpSpread1.Sheets[0].ColumnHeader.RowCount = 3;
FpSpread1.Sheets[0].RowHeader.ColumnCount = 2;
合并
FpSpread1.Sheets[0].ColumnHeaderSpanModel.Add(0, 0, 1, 8);
FpSpread1.Sheets[0].RowHeaderSpanModel.Add(0,0,12,1);
表头文本赋值
FpSpread1.Sheets[0].ColumnHeader.Cells[0, 0].Text = "Fiscal Year 2005";
FpSpread1.Sheets[0].RowHeader.Cells[0, 0].Text = "Branch #";
FpSpread1.Sheets[0].ColumnHeader.Cells[1, 0].Text = "1st Quarter";
指定单元格背景
FpSpread1.Sheets[0].Cells[0,0].BackColor = Color.Azure;
FpSpread1.Sheets[0].Cells[2,2,3,3].BackColor = Color.Bisque;
对齐样式
FpSpread1.Sheets[0].Cells[0,0].HorizontalAlign = HorizontalAlign.Right;
FpSpread1.Sheets[0].Cells[0,0].VerticalAlign = VerticalAlign.Top;
FpSpread1.Sheets[0].Cells[1,1,2,2].HorizontalAlign = HorizontalAlign.Center;
定义单元格边界
fpSpread1.Sheets[0].Cells[4, 3].Border = new FarPoint.Web.Spread.Border(System.Web.UI.WebControls.BorderStyle. Double, Color.DarkBlue, 2);
定义单元格内外边距
FarPoint.Web.Spread.Cell mycell;
FarPoint.Web.Spread.Inset margin = new FarPoint.Web.Spread.Inset(20, 40, 50, 20);
mycell = FpSpread1.Cells[0, 0];
mycell.Value = "Margin";
mycell.Locked = true;
mycell.Margin = margin;
FpSpread1.ActiveSheetView.Rows[0].Height = 80;
自定义样式
FarPoint.Web.Spread.NamedStyle backstyle = new FarPoint.Web.Spread.NamedStyle("BlueBack");
backstyle.BackColor = Color.Blue;
FarPoint.Web.Spread.NamedStyle text1style = new FarPoint.Web.Spread.NamedStyle("OrangeText", "BlueBack");
text1style.ForeColor = Color.Orange;
FarPoint.Web.Spread.NamedStyle text2style = new FarPoint.Web.Spread.NamedStyle("YellowText", "BlueBack");
text2style.ForeColor = Color.Yellow;
FpSpread1.NamedStyles.Add(backstyle);
FpSpread1.NamedStyles.Add(text1style);
FpSpread1.NamedStyles.Add(text2style);
FpSpread1.ActiveSheetView.Cells[0,0,2,0].StyleName = "OrangeText";
FpSpread1.ActiveSheetView.Cells[0,1,2,1].StyleName = "YellowText";
使用css
FarPoint.Web.Spread.GeneralCellType mycelltype = new FarPoint.Web.Spread.GeneralCellType();
myCellType.CssClass = "myCssClass";
FpSpread1.ColumnHeader.Cells[0, 0].CellType = myCellType;
FpSpread1.Cells[0, 1].CellType = myCellType;
创建一个区域
FarPoint.Web.Spread.Cell range1;
range1 = fpSpread1.ActiveSheetView.Cells[1, 1, 3, 3];
range1.Value = "Value Here";
range1.Note = "This is the note that describes the value.";
添加合并单元
FpSpread1.ActiveSheetView.Cells[1,1].Text = "These six cells are spanned.";
FpSpread1.ActiveSheetView.Cells[2,2].Text = "This is text in 2,2.";
FpSpread1.ActiveSheetView.AddSpanCell(1, 1, 2, 3);
自动合并相同行列
FpSpread1.Sheets[0].SetRowMerge(-1, FarPoint.Web.Spread.Model.MergePolicy.Always);
FpSpread1.Sheets[0].SetColumnMerge(-1, FarPoint.Web.Spread.Model.MergePolicy.Always);
设置滚动条
FpSpread1.HorizontalScrollBarPolicy = ScrollBarPolicy.Always;
FpSpread1.VerticalScrollBarPolicy = ScrollBarPolicy.AsNeeded;
设置滚动条的颜色
FpSpread1.ScrollBar3DLightColor = Color.Yellow;
FpSpread1.ScrollBarArrowColor = Color.Green;
FpSpread1.ScrollBarBaseColor = Color.Brown;
FpSpread1.ScrollBarDarkShadowColor = Color.Purple;
FpSpread1.ScrollBarFaceColor = Color.Orange;
FpSpread1.ScrollBarHighlightColor = Color.White;
FpSpread1.ScrollBarShadowColor = Color.Blue;
FpSpread1.ScrollBarTrackColor = Color.Pink;
展示AllowLoadOnDemand和LoadInitRowCount属性
FpSpread1.Sheets[0].RowCount = 40;
FpSpread1.Sheets[0].AllowLoadOnDemand = True;
FpSpread1.Sheets(0).PageSize = 40
FpSpread1.Sheets[0].LoadInitRowCount = 10;
long i;
for (i = 1; i <= 20; i++)
{
FpSpread1.Sheets[0].Cells[i, 0].Value = i;
}
TabKey
FpSpread1.ProcessTab = false;
定义tab的样式
FpSpread1.Sheets.Count = 3;
FarPoint.Web.Spread.TabInfo().TabControlPolicy = FarPoint.Web.Spread.TabControlPolicy.Always;
FpSpread1.Tab.VisibleCount = 2;
FpSpread1.Tab.ScrollIncrement = 2;
FpSpread1.Tab.FirstVisibleTab = 1;
FpSpread1.Tab.TextColor = Color.Yellow;
FpSpread1.Tab.ActiveTabBackColor = Color.Green;
FpSpread1.Tab[0] = "First";
FpSpread1.Tab[1] = "Second";
FpSpread1.Tab[2] = "Third";
切换工作表是否ajax支持
FpSpread1.EnableAjaxCall = true;
FpSpread1.ClientAutoCalculation = true;
在工作表中搜索指定的内容
fpSpread1.Search(2,"Total",true,true,false,false,1,1,56,56,ref rowindx,ref colindx));