Code 要素 (IntelliSense コード スニペット)
IntelliSense コード スニペットの小さなコード ブロックを格納するコンテナーを提供します。
<Code Language="Language"
Kind="method body/method decl/type decl/page/file/any"
Delimiter="Delimiter">
Code to insert
</Code>
属性および要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 |
説明 |
---|---|
Delimiter |
省略可能属性。 コード内のリテラルとオブジェクトを表す区切り記号を指定します。 既定では、区切り記号は $ です。 |
Kind |
省略可能属性。 スニペットに格納されているコードの種類と、コンパイルできるように、そのコード スニペットを配置すべき場所を示します。 使用できる値は、method body、method decl、type decl、file、および any です。 詳細については、次の表の「Kind Attribute」セクションを参照してください。 |
Language |
必須の属性です。 コード スニペットの言語を指定します。 使用できる値は、VB、CSharp、または XML です。 詳細については、次の表の「Language Attribute」セクションを参照してください。 メモ Intellisense コード スニペット スキーマは C++ をサポートしていません。 |
Kind 属性
値 |
説明 |
---|---|
method body |
コード スニペットがメソッドの本体であり、メソッド宣言の内部に挿入する必要があることを示します。 |
method decl |
コード スニペットがメソッドであり、クラスまたはモジュールの内部に挿入する必要があることを示します。 |
type decl |
コード スニペットが型であり、クラス、モジュール、または名前空間の内部に挿入する必要があることを示します。 |
file |
スニペットが完全なコード ファイルであることを示します。 これらのコード スニペットは、単体でコード ファイルに挿入することも、名前空間内に挿入することもできます。 |
any |
スニペットをどこにでも挿入できることを示します。 このタグは、コメントなど、コンテキストに依存しないコード スニペットに使用します。 |
Language 属性
値 |
説明 |
---|---|
VB |
Visual Basic のコード スニペットであることを示します。 |
CSharp |
Visual C# のコード スニペットであることを示します。 |
XML |
XML のコード スニペットであることを示します。 |
子要素
なし。
親要素
要素 |
説明 |
---|---|
コード スニペットの参照、インポート、宣言、およびコードが格納されます。 |
テキスト値
テキスト値が必要です。
このテキストで、コード スニペットをプロジェクトに挿入した場合に使用できるコードを、リテラルおよびオブジェクトと共に指定します。
解説
Code 要素のテキストでは、$end$ および $selected$ という 2 つの予約語を使用できます。 $end$ は、コード スニペットの挿入後のカーソル位置を指定します。 $selected$ は、ドキュメントで選択されているテキストを表し、スニペットが呼び出されたときに置き換えられます。 たとえば、次のテキストがあるとします。
$selected$ is a great color. I love $selected$.
テンプレートを呼び出したときに "Blue" という単語が選択されていた場合、結果は次のようになります。
Blue is a great color. I love Blue.
その他の $ キーワードはすべて、<Literal> タグおよび <Object> タグで動的に定義されます。
使用例
次のコード スニペットの Code 要素は、SqlDataAdapter を作成する、Visual C# のコード スニペットを記述する方法を示しています。 Declarations 要素で定義されているリテラルおよびオブジェクトは、Code 要素において、対応する ID 要素の値を使用して参照されます。 この例では、リテラルが $SQL$ として、オブジェクトが $Connection$ として参照されています。
<CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>Create a data adapter</Title>
<Description>Creates a SqlDataAdapter object.</Description>
<Author>Microsoft Corporation</Author>
<Shortcut>createadapter</Shortcut>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>SQL</ID>
<ToolTip>Replace with a SQL connection string.</ToolTip>
<Default>"SQL connection string"</Default>
</Literal>
<Object>
<ID>Connection</ID>
<Type>System.Data.SqlClient.SqlConnection</Type>
<ToolTip>Replace with a connection object in your application.</ToolTip>
<Default>dcConnection</Default>
</Object>
</Declarations>
<Code Language="CSharp">
<![CDATA[
daCustomers = new SqlClient.SqlDataAdapter();
selectCommand = new SqlClient.SqlCommand($SQL$);
daCustomers.SelectCommand = selectCommand;
daCustomers.SelectCommand.Connection = $Connection$;
]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>