【发布时间】:2012-05-14 11:22:38
【问题描述】:
Range range= (Range)this.workSheet.Cells[1,1];
range.AllowEdit = false;
当我将 AllowEdit 属性设置为 false 时,会显示编译错误:
错误:属性或索引器 'Microsoft.Office.Interop.Excel.Range.AllowEdit' 无法分配给 -- 只读
如何将单元格范围设置为只读?
当我对此范围使用验证时,我的 CellContentChanged 事件出现了一些异常。
这是 CellContentChanged 中的代码:
var updater = new Action<StyleColorItem>(
item =>
{
var editedItem = _taskViewModel.TrackedItems.First(it => it.Id == item.Id);
// Above line I am getting the exception like "Sequence contains no matching element"
editedItem.Update(item);'
});
【问题讨论】:
-
一个excel单元格可以设置为
read only,只有你设置它的属性Locked=True,然后设置WorkSheet=Protected。我不知道用 C# 代码是否容易做到,但你可以试试。