[英]How to make use of the ViewBox control to make the application re-sizable?
[英]How to make Excel columns read-only but re-sizable in EPPlus C# ?
在我的MVC項目中,用戶可以在UI中選擇一些產品,並以Excel(.xlsx)格式下載相關產品信息。
我們的業務需求是,除少數列/單元格外,文件應為只讀。 我正在使用EPPlus 4.0.4
生成Excel,並且到目前為止效果很好。
我在這里面臨的問題是,在保護工作表的那一刻,用戶無法再調整列的大小(拖動標題以更改列寬)。 因此,某些列中的文本不完全可見。 為了解決這個問題,我將它們設置為AutoFit(以下代碼中的##)。 因此,文本現在可見。 但是,用戶仍然無法更改他們應該能夠更改的列寬。
所以我的問題是,我可以將單元格/列設置為只讀,但可以像普通Excel一樣重新設置它們的大小嗎?
我的代碼如下
//using OfficeOpenXml;
//using OfficeOpenXml.Style;
private void ProtectExcel(ExcelWorksheet ws, int columnCount)
{
ws.Protection.AllowSort = true;
ws.Protection.AllowSelectUnlockedCells = true;
ws.Protection.AllowAutoFilter = true;
for (int i = 1; i <= columnCount; i++)
{
ws.Column(i).Style.Locked = true; //making read-only
ws.Column(i).AutoFit(); //## showing all text
}
ws.Protection.IsProtected = true; //making the sheet protected
}
ws.Protection
屬性上有許多屬性來指定要保護的內容。 一種是AllowFormatColumns
,所以:
ws.Protection.AllowFormatColumns = true;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.