在 C# Web 專案(WebForms/MVC/Core)中,無法直接透過後端程式碼禁用瀏覽器右鍵選單,因為右鍵事件發生在客戶端瀏覽器,屬於前端行為。必須注入 JavaScript 或使用瀏覽器擴充功能。
在頁面載入時輸出脚本:
<script>
document.addEventListener('contextmenu', function(e) {
e.preventDefault(); // 取消預設右鍵選單
// 可選:顯示自訂選單
});
</script>
在 ASP.NET WebForms 中可於 Page_Load 使用 ClientScript.RegisterStartupScript;MVC/Core 則直接在 .cshtml 撰寫。
若需強制管控(如考試系統),需開發瀏覽器擴充功能或使用 Enterprise Policy(Chrome/Edge Group Policy)禁用右鍵,後端無法單方面實現。
專案若涉及 Excel 匯入/匯出,推薦使用 EPPlus(.xlsx)或 NPOI(.xls/.xlsx)純 .NET 函式庫,避免安裝 Office 與 COM 互通的版本相容性問題。
禁用右鍵僅能阻擋一般使用者,**無法防止資料被爬蟲、開發者工具、或停用 JS 的瀏覽器取得**。機敏資料保護應著重於伺服器端授權與加密傳輸。