您的位置:首页 > 其它

Farpoint的简单用法简要概述

2013-02-15 00:00 399 查看
Farpoint操作Excel的功能很强大,这里简单记录一下Farpoint的几个用法.
1.打开Excel模板
this.FpSpread1.OpenExcel(Server.MapPath("../Report/" + strReport)); //打开Excel模板 
this.FpSpread1.Sheets[0].AllowPage = false; //是否分页显示 
this.FpSpread1.Sheets[0].AutoCalculation = true; //是否计算公式 
this.FpSpread1.UseClipboard = false; //是否可以使用复制粘贴 
this.FpSpread1.Sheets[0].OperationMode = FarPoint.Web.Spread.OperationMode.RowMode; //操作cell的方式(可读写) 
this.FpSpread1.CommandBar.Visible = false; //是否显示工具栏

2.保存Excel模板
if (fpSpreadTemplate.SaveExcel(Server.MapPath("../" + strFileName)) == true) 
{}

如果保存的时候报错了.可以考虑给操作Excel的文件夹赋everyone权限.
如果还是不行可以考虑将你安装过的farpoint的一个文件夹(fp_client) 配置到你的项目里,然后在webconfig配置节点
<appSettings> 
<add key="fp_client" value="Report/fp_client"/> 
</appSettings>

fp_client 文件夹在你安装的farpoint根目录内.
3.操作Excel
//打开模板 
fpSpreadTemplate.OpenExcel(Server.MapPath("../Template/" + TEMPLATE)); 
fpSpreadTemplate.Sheets[0].AllowPage = false; 
fpSpreadTemplate.Sheets[0].AutoCalculation = true; 
//循环行和列,遍历格子 
for (int iRow = 0; iRow < fpSpreadTemplate.Sheets[0].RowCount; iRow++) 
{ 
//根据列遍历excel 
for (int iCol = 0; iCol < fpSpreadTemplate.Sheets[0].ColumnCount; iCol++) 
{ 
//获取对应格子中的文本值 
strCurr = fpSpreadTemplate.Sheets[0].Cells[iRow, iCol].Text; 
//为格子内容赋值 
fpSpreadTemplate.Sheets[0].Cells[iRow, iCol].Text = "ABC"; 
} 
}

4.前台操作Excel
//使用Farpoint 的FpSpread1_UpdateCommand 事件 
protected void FpSpread1_UpdateCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e) 
{ 
if (fpSpreadTemplate != null) 
{ 
try 
{ 
//这里循环的某一行的所有列 
for (int i = 0; i < e.EditValues.Count; i++) 
{ 
//如果行的第一列是auto说明这个报表需要输入时间自动赋值的 
if (this.FpSpread1.Sheets[0].Cells[Convert.ToInt32(e.CommandArgument), 0].Text.ToString() == "auto") 
{ 
#region 
//如果当前没有编辑过值 
if (e.EditValues[i].ToString() != "System.Object") 
{ 
} 
#endregion 
} 
} 
} 
catch (Exception ex) 
{ 
} 
} 
}

O(∩_∩)O每天进步一点点O(∩_∩)O 该BLOG供个人记录学习笔记,如有错误欢迎指出!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: