2010-08-04 16 views
0

我相信這主要適用於將自定義對話框放入DLL中,但我確定存在一些我沒有想到的外圍情況。是否有任何一個DLL的原因(除了可能是一個控制庫)來顯示對話框,彈出窗口或其他GUI元素?我發現它通過規避開發人員並將決策直接傳遞給用戶,從而避免了使用該庫的開發人員的控制權,但是在某些情況下,這可能是有效的設計嗎?或者它是嚴格的不好的設計?非控件庫DLL何時應顯示窗口和其他GUI元素?

回答

1

爲什麼它會不好?

很明顯,如果應用程序的非GUI層(如數據抽象層或業務邏輯)試圖直接顯示UI元素會很糟糕,因爲這會與分層體系結構相矛盾並限制組件的重用。

但是,dll不一定對應於邏輯或功能應用程序層,它是一個部署單元,可以包含任何資源以便編碼到圖形元素。事實上,您可能想要將業務邏輯和GUI綁定到單個DLL中,例如當您創建和部署應用程序擴展時。

0

我相信使用異常機制是去這裏的最佳途徑。

相關問題