在数据录入时,我们总希望能个用户带来完美的操作体验,简化用户的数据录入操作,给新增数据设置初值就是一个改用互用体验的很好例子,本文也主要讲解如何给 Spread for ASP.NET 新增数据行设置初值。

在 Spread 绑定数据源的情况下,我们可以重写【Add】按钮事件来实现给新增数据行设置初值,代码如下:

    protected override void Render(HtmlTextWriter writer)
    {
        WebControl add = FpSpread1.FindControl("Add") as WebControl;
        if (add != null)
        {
            add.Attributes.Add("onclick","return CAdd();");
        }
        base.Render(writer);
    }

 

客户端的 CAdd 方法实现代码如下:

<script type="text/javascript" language="javascript">
        function CAdd() {
            FpSpread1.CallBack("CAdd");
        }
    </script>

如何在Spread的ButtonCommand事件中实现增加行和设置初始值的逻辑:

    protected void FpSpread1_ButtonCommand(object sender, FarPoint.Web.Spread.SpreadCommandEventArgs e)
    {
        if (e.CommandName == "CAdd")
        {
            int row = FpSpread1.ActiveSheetView.RowCount;
            FpSpread1.ActiveSheetView.Rows.Add(row, 1);
                
            FpSpread1.ActiveSheetView.Cells[row, 0].Value = Convert.ToInt32(FpSpread1.ActiveSheetView.Cells[row - 1, 0].Value.ToString()) + 1;                
            FpSpread1.ActiveSheetView.Cells[row, 2].Value = "葡萄城控件";
            FpSpread1.ActiveSheetView.Cells[row, 3].Value = DateTime.Now;                
        }
    }

运行截图:

 

源码下载:

7226_DefaultValue.zip (9.70 kb)