设置锁定单元格内容

发布时间:2012/11/13 00:11 发布者:葡萄城产品团队

返回博客中心

Spread 中单元格可以被锁定,锁定的单元格禁止任何对单元格内容的操作,在 Spread 早期的版本中,可以通过代码设置锁定单元格的内容,甚至可以复制锁定单元格的内容。许多客户反映说这个功能不实用。所以,在晚期的 Spread for ASP.NET  版本中改变了这个功能。使锁定单元格内容不允许通过 javascript 或 最终用户设置或复制单元格的内容。随着 Spread 的广泛使用,许多程序员有交互锁定单元格的需求出现。怎样解决这个问题呢?

有一种方法是可以通过 javascript 使锁定单元格内容仍然可以进行设置,你要做的是通过移除锁定单元格的 “FpCellType” 属性,这个属性包含单元格锁定的信息,然后对单元格的内容进行设定,最后重新锁定单元格。

代码演示:
服务端代码:

 
fpSpread1.ActiveSheetView.Columns(0).Locked=True

复制代码

客户端代码:

 
function window.onload(){

                          var spread = document.all("FpSpread1");

                          if (spread!=null) {

                                    spread.onActiveCellChanged = cellChanged;

                          }

                }



                function cellChanged() {

                          var iActiveRow, iActiveCol;

                          iActiveColumn = FpSpread1.ActiveCol;

                          iActiveRow = FpSpread1.ActiveRow;

                          var cell = FpSpread1.GetCellByRowCol(iActiveRow, iActiveCol);

                          cell.removeAttribute("FpCellType");

                          FpSpread1.SetValue(0, 0, "Scott", true);

                          cell.setAttribute("FpCellType", "readonly");

                }

复制代码

使用相同的设置,你可以允许最终用户复制单元格内容。


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网