我的問題與WPF的設計時支持有關。從MSDN我讀,創建自定義設計時環境
WPF設計提供了一個框架 ,哪些是你可以用它來 實現自定義裝飾器,工具, 屬性編輯器,和設計師一個公共的API。
但是我發現的絕大多數示例都是微不足道的,並沒有說明在現有WPF應用程序中創建自定義設計器的情況。我們在過去的一年中將應用程序從Windows窗體遷移到WPF,下一步將採用現有的WinForms Panel設計器,並將其重寫爲WPF。
只需說這將是一個巨大的項目。但我甚至不知道從哪裏開始。我想知道你們中的任何一個人是否曾經爲WPF應用程序編寫過定製設計師的類似經歷,以及它是什麼樣的。更妙的是,如果您可以比較WinForms設計器和WPF設計器之間的功能並對其進行比較或解釋從前者到後者的轉換,那將會很有幫助。如果您知道任何演示定製設計環境(使用自定義控件等)的簡單示例,那將非常有益。
總而言之,我只是想知道如果很多人已經採取了這種做法,以及他們的結果是什麼。
編輯:爲了澄清,是的,我正在談論主辦一個WPF設計師。看來這可能不可能,這是一個巨大的挫折。這是我們當前的WinForms設計器的屏幕截圖。如您所見,它用於創建自定義的用戶界面。您可以將自定義控件拖放到其上並對其進行設計,然後將面板置於「運行模式」,其中所有控件都可以正常工作。
花了幾個月寫作我們的設計師,這將是可能的WPF?那麼.NET 4.0和VS2010呢?那些會添加任何設計器功能嗎?
alt text http://img94.imageshack.us/img94/5378/oldpaneldesigner.png
編輯我的問題來添加信息。我們正試圖在我們的應用程序中託管設計人員,顯然隔離殼不是我們的解決方案。我很震驚微軟在這方面缺乏支持 - 他們似乎完全忽略了這種情況的可能性。 – Charlie 2010-03-05 19:47:38
這聽起來不像是他們忽視了情景......但是他們要麼A.沒有時間,要麼B.決定最好的方式來做到這一點,並控制使用是通過隔離殼。儘管...看看孤立的殼,它是高度可定製的。 – Nick 2010-03-05 20:46:31
編輯添加另一個可能的資源... SharpDevelop可能已經想出了一個方法來做到這一點。在我編輯的答案中有一個鏈接到他們的代碼。 – Nick 2010-03-05 22:29:41