2012-06-29 17 views
2

有沒有辦法強制設計器引擎從一個給定的可設計的WinForms控件的單元測試運行(即,一個自動生成的designer.cs文件)?自動捕獲任何會阻止Visual Studio設計器視圖爲控件打開的錯誤會很好。有沒有辦法自動測試winforms中是否有任何設計器錯誤?

謝謝。

+1

你是什麼意思的「設計師錯誤」? –

+0

什麼會導致設計師錯誤屏幕上來 –

+1

我明白這個問題很好,但我不知道答案。他可能會動態地創建一個WinForm文件,並且要確保FormName.Designer.vb文件中沒有錯誤。 – HardCode

回答

-3

本質上,設計師在您的Form上打電話InitializeComponent來顯示它。可能有一些差異,但沒有太大意義。

因爲InitializeComponent默認是私有的,相當於是創建一個新的Form,作爲默認的構造函數調用InitializeComponent

所以只是做

new Form1(); 

足以保證InitializeComponent不會引發任何異常。

+0

這不是我正在尋找的。很多時候,設計者不會加載控件,但是在調試模式下,我的程序中的控件工作得很好(這意味着InitializeComponent()代碼工作正常)。 –

+0

我需要從我的測試中運行的代碼是設計人員用於反射檢查InitializeComponent()代碼(以及可能碰巧看到的代碼的其他部分)以獲取構建它所需的信息的代碼該控制的設計者環境。 –

+0

我懷疑你有權訪問該代碼,因爲它是Visual Studio的一部分。我還應該提到,我認爲如果你在'InitializeComponent'中添加一個消息框,它會被設計者顯示出來,這意味着它被調用,而不是被檢查。 –

相關問題