Spread for ASP.NET 表格控件 在前台提供了 Callback 方法用于调用后台 Command 事件,通过这个事件我们就可以根据前台的用户行为调用后台的 Spread 丰富的接口去操作 Spread。论坛中也有很多用户询问,因此在本篇文章中记录下使用方法。
本篇文章中我们以捕获前台用户鼠标单击事件为例进行功能描述。
1.后台添加Cell的 onclick 事件:
Spread 表格控件渲染到前台后是以 HTML Table 进行展示的。
后台代码:
protected override void Render(HtmlTextWriter writer)
{Table viewPort = this.FpSpread1.FindControl("viewport") as Table;
viewPort.Attributes.Add("onclick", "clickOnSpread()");base.Render(writer);}
前台代码:
<script type="text/javascript">
function clickOnSpread() {}</script>
2.前台获取 Spread DOM 节点,并且调用 CallBack 方法:
<script type="text/javascript">
function clickOnSpread() {var spread = this.document.getElementById("FpSpread1");
//获取点击行列信息
var activeRow = spread.GetActiveRow();var activeCol = spread.GetActiveCol();//CallBack到后台
spread.CallBack("前台点击事件"+"Row:"+activeRow+"Col:"+activeCol,true);}</script>
3.添加 ButtonCommand 事件,在 CallBack 事件中获取单元格信息。
protected void FpSpread1_ButtonCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e)
{//获取当前操作的Spread,从而可以获取当前 Spread 的任何信息
FarPoint.Web.Spread.FpSpread currentSpread = (FarPoint.Web.Spread.FpSpread)(sender);//取得事件名称
string commandName = e.CommandName;//取得当前操作表单
FarPoint.Web.Spread.SheetView currentSheetView = e.SheetView;}
以上即为添加前台操作后台响应的详细操作步骤。
Demo 下载:VS2013 + C# + Spread 8.0
下载 Spread 表格控件体验更多功能,请点击: