原文地址:http://blog.csdn.net/jianyi7659/article/details/6618721
我們在自己創建組件經常會出現我們的組件從工具箱中拖到WinForm時會拋出如下異常。
即該組件沒法初始化。
但是相同的組件在如果不是從工具箱中拖拽的方式,而是在後面代碼中運行加載它又是正常的。
這就 讓我們想象一個問題:這個組件又是正常的,即一個正常的組件不能夠通過工具箱拖拽初始化?這是什麼原因呢?
通過跟蹤發現拖拽方式,初始化時的控件加載路徑是IDE下,而有些時候我們的控件有別的組件的引用,所以他就會去找
該組件,但在IDE中它沒找到所以就初始化不了,就拋出異常了。而採用運行時加載的方式它是在程序運行的路徑下去查找的
所以 能夠正常運行。
對於 這個問題的解決方法:
1.就採用運行時加載的方式,不用拖拽的方式——因爲拖拽它是馬上初始化的。
2.把該組件需要的其他類庫拷到IDE下面,再將控件拖拽到WinForm。
建議:在製作控件時儘量讓該控件比較獨立,少引用第三方的控件庫。
===================================================================================================================
原文地址:http://www.mysjtu.com/page/M0/S590/590263.html
爲了進步用戶體驗,在winform項目中,本身設計了重構了一組控件,可以或許正常應用.
在主窗體中,按照不合功能,加載不合的用戶控件,用戶控件中應用了本身設計的一組控件.在08下,沒什麼題目,因爲打包法度太大(240M),轉換到05景象下,可以運行.
異常:
1.用戶控件無法在設計模式下,正常預覽,異常:未能加載文件或法度集
2.對象箱中,用戶控件無法拖拽到窗體中
經由過程跟蹤發明拖拽體式格式,初始化時的控件加載路徑是IDE下,而有些時辰我們的控件有此外組件的引用,所以他就會去找
該組件,但在IDE中它沒找到所以就初始化不了,就拋出異常了。而採取運行時加載的體式格式它是在法度運行的路徑下去查找的
所以 可以或許正常運行。
對於 這個題目的解決辦法:
1.就採取運行時加載的體式格式,不消拖拽的體式格式——因爲拖拽它是即速初始化的。
2.把該組件須要的其他類庫拷到IDE下面,再將控件拖拽到WinForm。
================================================================================================================
原文地址:http://www.cnblogs.com/goahead777/archive/2011/09/01/2162036.html
爲了提高用戶體驗,在winform項目中,自己設計了重構了一組控件,能夠正常使用.
在主窗體中,根據不同功能,加載不同的用戶控件,用戶控件中使用了自己設計的一組控件.在08下,沒什麼問題,由於打包程序太大(240M),轉換到05環境下,可以運行.
異常:
1.用戶控件無法在設計模式下,正常預覽,異常:未能加載文件或程序集
2.工具箱中,用戶控件無法拖拽到窗體中
通過跟蹤發現拖拽方式,初始化時的控件加載路徑是IDE下,而有些時候我們的控件有別的組件的引用,所以他就會去找
該組件,但在IDE中它沒找到所以就初始化不了,就拋出異常了。而採用運行時加載的方式它是在程序運行的路徑下去查找的
所以 能夠正常運行。
對於 這個問題的解決方法:
1.就採用運行時加載的方式,不用拖拽的方式——因爲拖拽它是馬上初始化的。
2.把該組件需要的其他類庫拷到IDE下面,再將控件拖拽到WinForm。