次の方法で共有


TextTransformation.PushIndent メソッド

生成されたテキスト出力の各行の先頭に付加されたテキストを CurrentIndent に追加します。

名前空間:  Microsoft.VisualStudio.TextTemplating
アセンブリ:  Microsoft.VisualStudio.TextTemplating.11.0 (Microsoft.VisualStudio.TextTemplating.11.0.dll 内)

構文

'宣言
Public Sub PushIndent ( _
    indent As String _
)
public void PushIndent(
    string indent
)
public:
void PushIndent(
    String^ indent
)
member PushIndent : 
        indent:string -> unit 
public function PushIndent(
    indent : String
)

パラメーター

  • indent
    型 : System.String
    CurrentIndent に追加するテキスト。CurrentIndent にテキストが既に格納されている場合は、indent が、既存のテキストの末尾に追加されます。

解説

CurrentIndent は、生成されたテキスト出力の各行の先頭に付加されたテキストを表します。インデント テキストには "    " のように空白のみを使用することも、単語を含めることもできます。PushIndent はテキストを CurrentIndent に追加します。このメソッドは複数回呼び出すことができます。PopIndent は最も最近追加されたテキストを CurrentIndent から削除します。このメソッドは複数回呼び出すことができます。ClearIndent は、すべてのテキストを CurrentIndent から削除します。

次のコード例は、テキスト テンプレートから PushIndent メソッドを呼び出す方法を示しています。これらのコード例をテキスト テンプレート ファイルに貼り付け、テキスト テンプレート変換を実行して結果を表示します。

この例では、PushIndent メソッドを呼び出し、インデントとして 4 つのスペースを追加します。コード内の WriteLine ステートメントのインデントは、出力のインデントに影響を与えません。

<#
PushIndent("    ");

WriteLine("Hello");
    WriteLine("How are you?");
        WriteLine("Goodbye");

ClearIndent();
#>
<#
PushIndent("    ")

WriteLine("Hello")
    WriteLine("How are you?")
        WriteLine("Goodbye")

ClearIndent()
#>

この例を実行すると、次の出力が生成されます。

    Hello

    How are you?

    Goodbye

次の例では、PushIndent メソッドを複数回呼び出します。最初に 4 つのスペースをインデントとして追加し、2 回目にさらに 4 つのスペースをインデントとして追加します。

<#
PushIndent("    ");
WriteLine("Hello");
WriteLine("How are you?");

PushIndent("    ");
WriteLine("I am fine, thank you. How are you?");

PopIndent();
WriteLine("I am fine too, thank you.");
WriteLine("Goodbye");

PushIndent("    ");
WriteLine("Goodbye");

ClearIndent();
#>
<#
PushIndent("    ")
WriteLine("Hello")
WriteLine("How are you?")

PushIndent("    ")
WriteLine("I am fine, thank you. How are you?")

PopIndent()
WriteLine("I am fine too, thank you.")
WriteLine("Goodbye")

PushIndent("    ")
WriteLine("Goodbye")

ClearIndent()
#>

この例を実行すると、次の出力が生成されます。

    Hello

    How are you?

I am fine, thank you. How are you?

    I am fine too, thank you.

    Goodbye

        Goodbye

次の例では、PushIndent メソッドを呼び出し、インデント テキストに単語を含めます。

<#
WriteLine("The first five numbers:");
PushIndent("  Number: ");

for(int i=1; i<6; i++)
{
    WriteLine(i.ToString());
}
ClearIndent();
#>
<#
WriteLine("The first five numbers:")
PushIndent("  Number: ")

For i as integer = 1 To 5

    WriteLine(i.ToString())
Next

ClearIndent()
#>

この例を実行すると、次の出力が生成されます。

The first five numbers:

  Number: 1

  Number: 2

  Number: 3

  Number: 4

  Number: 5

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

TextTransformation クラス

Microsoft.VisualStudio.TextTemplating 名前空間

CurrentIndent

PopIndent

ClearIndent

その他の技術情報

コード生成と T4 テキスト テンプレート