2013-12-18 30 views
7

私はカスタムXAMLデザイナをhttp://code.msdn.microsoft.com/windowsdesktop/Designer-View-Over-XML-20a81f17として作成しました。カスタムデザイナをいくつかのタイプのプロジェクト(カスタムタイプのプロジェクトなど)と他のすべてのプロジェクトデザイナーがデフォルトで使用します。ファイルVsTemplateDesignerPackage.csでカスタムプロジェクトタイプのカスタムXAMLデザイナVisual Studio

は持っている:

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

しかし、それは動作しません:

// 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)] 

私が追加。これは、この拡張機能のカスタムデザイナーがすべてのタイプのプロジェクトで使用されるという事実につながります。

* .XAMLファイルをカスタムプロジェクトで開くようにカスタムデザイナーにするにはどうすればよいですか?

答えて

0

私はVSSDKでこれを行う標準的な方法はないと思います。デザイナーは主に特定のファイル拡張子を対象とし、どのプロジェクトタイプでもそのファイル拡張子に対して呼び出されます。

現在のロードされているプロジェクトのタイプを調べた後に、そのエディタの作成/インスタンス化要求をリダイレクトまたは拒否する方法があるかどうかを調べるか、ファイルタイプの次の行のエディタを見つけようとします。それのインスタンスを作成し、代わりにそれを返します。

残念ながら、VSSDKのコードに最後に触れてから何年も前に技術的な詳細やコードを入力することができません。

関連する問題