次の方法で共有


複数の IWizard 実装を含むテンプレート

Visual Studio ではチェーンをサポートしており、1 つのテンプレートに複数の IWizard 実装を含めることができます。 これらの実装は順次呼び出されるため、高度で柔軟な機能を持つテンプレートを作成できます。

実装の詳細

Microsoft で実装された VsTemplate ウィザードが呼び出され、.vstemplate ファイルを読み取りながらテンプレートを処理します。VsTemplate は、テンプレートの処理に関与するために IWizard 実装を呼び出す、1 つまたは複数のアセンブリの一覧を作成します。 チェーンを利用するには、テンプレートの .xml ファイルに、すべてのウィザードが、呼び出される順序でリストされている必要があります。

ディクショナリ オブジェクトはパラメーター置換リストとして機能します。そのために、テンプレートが IWizard 実装にパラメーターを渡し、ある IWizard 実装が別の実装にパラメーターを渡すことができるようにします。 RunStarted に渡されるディクショナリへの参照は、IWizard によって保存されます。通知コールバック内の IWizard による変更はすべて保持されます。

置換パラメーター (たとえば $MyVariable) はスコープ内でグローバルであり、任意の IWizard からアクセスできます。 別の IWizard が誤って使用したり変更したりしないように、すべての置換変数に一意の名前が付いていることを確認してください。 ウィザードのすべての置換パラメーターを文書化して、その使用目的が他のユーザーにもわかるようにすることをお勧めします。

IWizard には ShouldAddItem という名前のブール型のプロパティが含まれています。 このプロパティは、指定されたファイルを追加するかどうかをウィザードに通知します。 ShouldAddItem が false に設定されている場合、現在のウィザードに従属するすべてのウィザードは、その項目を読み込みません。

参照

処理手順

方法 : テンプレート内のパラメーターを置き換える

方法 : プロジェクト テンプレートを組み合わせたウィザードを使用する