目錄
- 插件的編寫
- 插件的使用
參考資料 Creation of .NET Controls 109759944_Prepare.NetControls_DOC_en.pdf
插件的編寫
- 創建插件項目,選擇Windows窗體控件庫(.NET Framework)
- 框架選擇 4.5.2以上版本
- 為程序集簽名
- 在項目上右鍵點擊屬性.
- 切換到簽名選項卡.
- 勾選為程序集簽名,並創建簽名密鑰.
- 可選:為控件添加屬性
在控件代碼中增加屬性代碼
private bool mvalue;//私有變量
//Category 表示屬性所在的分類 Data表示在數據類中
//Description 表示在屬性頁中顯示的描述
//Browsable 表示是否在屬性頁中顯示, 不增加默認為true
//DefaultValue 默認值,不填為空
[Category("Data")]
[Description("這是一個變量")]
[Browsable(true)]
[DefaultValue(true)]
public bool MValue
{
get { return mvalue; }
set { mvalue = value; }
}
- 可選:為控件添加事件
- 創建自定義委託(可選)
//委託
public delegate void MyChangeEventHandler();
- 添加自定義事件
[Browsable(true)]//是否顯示,不添加為true,為false為隱藏
[Category("Action")]//事件分類
[Description("Invoked when user clicks button")]//描述
public event EventHandler ButtonClick;//此處 Eventhandle 可以改為自定義委託 MyChangeEventHandler
- 內部觸發事件
protected void Button1_Click(object sender, EventArgs e)
{
//檢查事件列表是否為空
if (this.ButtonClick != null)
this.ButtonClick(this, e);
}
- 生成插件
點擊生成下的生成來生成插件,在bin目錄中找到生成的插件dll
插件的使用
- 全局註冊
- 全局註冊的程序 ,在生成時必須選anyCpu 如果,如果不是AnyCpu生成如(X86,X64)只能通過手工加載的方式
- 全局註冊需要安裝.net 4 SDK 下載:https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net48-developer-pack-offline-installer
- 以管理員身份運行CMD,跳轉到 SDK工具目錄
cd "C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools"
- 使用命令 全局註冊插件dll
#"gacutil.exe /l" 查看所有註冊成功的組件
#"gacutil.exe /l 程序集名稱" 查看指定程序集註冊狀態
#"gacutil.exe /u 程序集名稱" 卸載已註冊的程序集
#cmd下執行
gacutil.exe /i 插件路徑
#powershell下執行
./gacutil.exe /i
#插件的路徑 最好帶雙引號,不要使用中文路徑
- 手動註冊
手動註冊直接在插件中選擇 程序集dll文件即可,如果運行出現錯誤,可將Dll文件放到運行程序根目錄下再次手工選擇 註冊
本文章為轉載內容,我們尊重原作者對文章享有的著作權。如有內容錯誤或侵權問題,歡迎原作者聯繫我們進行內容更正或刪除文章。