2012-01-28 33 views
8

私は自分のカスタムオブジェクトグラフを表すためにXAMLを使用しているアプリケーションがあります。 WPF/Silverlightオブジェクトモデルとはかなり異なります(UIデザインには使用されません)が、意味のある方法でオブジェクトグラフを視覚化することは可能です。私がしたいのは、私の特定のオブジェクトを視覚化するためにVisual Studioにデザイナの拡張機能を追加することですが、このトピックに関する情報を見つけることができませんでした。誰かが正しい方向に私を指すことができますか?Visual StudioカスタムXAMLデザイナ

私の主な目標は、現在のXAMLの簡単なビジュアルフィードバックを得ることです。私はまだビジュアル編集をサポートするデザイナーが必要な段階にはいません。誰かが好奇心を持っているなら、それは産業機械をシミュレートするためのツールです。私はXAMLを使ってマシンのコンポーネントとその接続を定義していますが、現在は完全なシミュレーションを実行してマシンの外観を確認する必要があります。

答えて

11

ファイルを解析して内容を視覚化するVisual Studio拡張機能(vsix)を作成する必要があります。 Visual Studio アドインまたはVisual Studioパッケージの2つのオプションがあります(1139294の相違の詳細を参照)。最初のものはやや簡単に始めることができますが、後者の方がよりコントロールできるようになりますので、今後編集をお考えの場合は をお勧めします。

Visual Studio拡張機能(別名Visual Studio 2010 SP1 SDK)を作成するためのSDKをダウンロードすることから始めます。古い非SP1バージョンの場合は、hereをクリックします。

Visual Studioパッケージの作成に慣れておく必要があります。 Microsoftのチュートリアルについては、Walkthrough: Creating a VSPackageを参照してください。 チュートリアルに従う場合、メニューコマンドから カスタムコンポーネントをトリガするのに必要なものがすべて必要です。だから今実際にあなたのすべてが 必要です。カスタムXAMLを解析/可視化できる通常のWPFコンポーネントです。 また、カスタムファイルタイプをコンポーネントに関連付ける必要があります。このためにはProvideEditorExtensionAttributeが必要です。

サンプルのようなものはありませんのでsamples libraryThe IDE Sample Editorをご覧ください。これにより、小さなファイルエディタのカスタムファイルタイプが作成されます。これは、お探しのものに近いものです。ファイルエディタコンポーネントと関連するファイルタイプをエディタで置き換えると、ほぼ完了です!

+4

+1「あなたはほぼ完了です!」 – RQDQ

+0

ありがとう、これは私を正しい方向に向けるのに役立ちます。私のケースは少し異なります(私はカスタムファイルフォーマットを持っていないので、まだ* .xaml拡張であり、他のxamlクラスと同じように、バッキングコードファイルとともにクラスにコンパイルされます)。しかし、これはまだ非常に便利です。 –

+0

嬉しいことに、Silverlightプロジェクトでは、VSは.xamlを一方向にレンダリングすることを、WPFプロジェクトではVSを別の方法でレンダリングすることを認識しています。 "プロジェクトタイプ-x用* this * designer for xaml"など – BrainSlugs83

関連する問題