2013-12-18 65 views
7

我做了一個自定義的XAML設計爲http://code.msdn.microsoft.com/windowsdesktop/Designer-View-Over-XML-20a81f17我有一個問題:如何讓自定義設計僅在某些類型的項目的經驗(如項目定製型),以及所有其他項目設計師默認使用。自定義項目自定義XAML設計器類型的Visual Studio

在文件VsTemplateDesignerPackage.cs有:

// Microsoft Visual Basic Project 
[EditorFactoryNotifyForProject("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}", EditorFactory.Extension, GuidList.guidXmlChooserEditorFactory)] 
// Microsoft Visual C# Project 
[EditorFactoryNotifyForProject("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}", EditorFactory.Extension, GuidList.guidXmlChooserEditorFactory)] 

我補充一下:

//CustomProjectType 
[EditorFactoryNotifyForProject("{GUID CustomProjectType}", EditorFactory.Extension, GuidList.guidXmlChooserEditorFactory)] 

但它不工作。這導致了這個擴展的自定義設計器被用於所有類型的項目。

我如何自定義設計僅在定製項目打開* .XAML文件?

回答

0

我認爲在VSSDK中沒有這樣做的標準方法。設計人員主要針對某個文件擴展名,並且將針對任何項目類型的文件擴展名進行調用。

我會嘗試查看是否有方法在檢查當前加載的項目類型之後重定向或拒絕創建/實例化該編輯器的請求,或者查找您的文件類型的下一個內聯編輯器,以及創建一個實例並返回它。

可惜我無法提供的技術細節或代碼,因爲它已經多年自從我上次碰到任何VSSDK代碼。

相關問題