在我們的項目中,我們擁有許多不同程序集(在具有100個視圖的單個解決方案中多達40個程序集)的視圖和控件。我們希望將一個皮膚應用於單個皮膚裝配體的所有視圖,我們可以使用不同的皮膚裝配體換出一個皮膚裝配體以應用不同的皮膚(不一定在運行時,這可以在編譯時完成),只需要更改一個皮膚幾行代碼。這裏是踢球者...我們希望它能夠在Visual Studio 2008 Designer中正確顯示。在Visual Studio 2008 Designer中工作的WPF皮膚庫
我們目前有一個運行時解決方案,通過將外觀的主資源字典合併到Application.Resources中來應用合適的外觀,但Visual Studio設計器不在依賴程序集中的視圖上顯示該外觀。
我們可以將皮膚的資源字典合併到每個視圖的Window.Resources中,但是如果我們想換出皮膚,這是一個性能問題,並且需要很多更改。
我已經看過在主題級應用樣式,但要在主題級使用樣式,則需要指定ComponentResourceKey,並在主題部件中使用對類型的強類型引用。這需要每一個視圖指定皮膚所在的命名空間,並且再次是換出皮膚的主要重構。
其他想法?