VS2017 Winform 設計器異常原因排查


 

 Winform 軟件開發過程中,使用可視化設計器 大大提高了應用程序布局效率 ,今天遇到設計器報錯,如下錯誤截圖(1-1) ,記錄一下排錯過程。

       前期編寫用戶控件,從工具箱拖出控件時報錯,截圖如下(1-1)。程序實際運行過程中不存在此類錯誤。后來發現,是vs 2017 設計器呈現控件外觀時,默認執行了自定義控件的 類構造或 Load 方法引起的 。 那為什么程序實際運行沒異常? 

       於是,在拋出異常點加了 try catch ,檢查控件調用方 , 如下截圖(1-2) , 這時設計器異常顯示如(1-3) 。 原來是從IDE 啟動目錄加載了控件,初使化環境並非 應用程序目錄。因為用戶控件依賴應用程序啟動目錄配置信息和一些其它DLL , 而IDE環境不存在這些配置依賴項。

   解決方式:

   1. 在用戶控件初使化如 構造或 Load 中加上 Try Catch .

   2. 減少用戶控件初使化過程中對外部依賴項,如可將一些外部依賴項通過傳參方式注入。

   3. 詳參 用戶控件 DesignModen 屬性,標識是否處於設計器模式。

 

圖1-1

 

圖1-2

 

圖1-3

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM