共用方式為


HOW TO:建立具有取代物件的新程式碼片段

您可能會想要讓其他人員藉由插入方式取代程式碼片段中的某一部分。 如果您想要參考特定變數或物件,同時又希望讓使用者能以其他專案中的變數或物件來取代該變數或物件,這樣的做法會非常實用。 IntelliSense 程式碼片段是利用 LiteralObject 項目來提供此一功能。

在插入程式碼片段之後,您只需按一下要取代的部分然後再按下 CTRL + 空格鍵,即可存取程式碼中所有可能的取代物件。

建立常值取代

Literal 項目是用以辨認整個包含在程式碼片段中一小段程式碼的取代,但有可能會在插入程式碼後加以自訂。 例如,常值字串、數值以及一些變數名稱應該宣告成常值。

這個程序是假設您已事先執行 HOW TO:建立基本的程式碼片段主題中所說明的步驟。

若要建立常值取代

  1. 尋找程式碼片段的 Snippet 項目。

  2. 加入 Declarations 項目做為 Snippet 項目的子系。 Declarations 項目是用來群組取代宣告 (Replacement Declaration)。

  3. 加入 Literal 項目做為 Declarations 項目的子系。 Literal 項目會指定個別的常值。 程式碼片段可以擁有一個以上常值取代。

  4. 加入 ID 項目,做為 Literal 項目的子系。 這個項目的文字值會指定用以參考 Code 項目中之常值的名稱。

  5. 加入 Default 項目做為 Literal 項目的子系。 Default 項目的文字值會指定插入程式碼片段時的預設常值。

  6. 請選擇性加入函式項目和 (或) 工具提示項目。

建立物件取代

Object 項目是用以識別程式碼片段所需的項目,但有可能定義在程式碼片段本身的外面。 例如,Windows Form 控制項、ASP.NET 控制項、物件執行個體以及型別執行個體應該宣告成物件。 進行物件宣告時必須指定型別。

這個程序假設您已事先執行 HOW TO:建立基本的程式碼片段主題中所說明的步驟。

若要建立物件取代

  1. 尋找程式碼片段的 Snippet 項目。

  2. 加入 Declarations 項目做為 Snippet 項目的子系。 Declarations 項目是用來群組取代宣告。

  3. 加入 Object 項目,做為 Declarations 項目的子系。 Object 項目指定個別的物件。 程式碼片段可以擁有一個以上的物件取代。

  4. 加入 ID 項目,做為 Object 項目的子系。 這個項目的文字值會指定用以參考 Code 項目中之物件的名稱。

  5. 加入 Type 項目做為 Object 項目的子系。Default 項目的文字值會指定物件型別。

  6. 加入 Default 項目做為 Object 項目的子系。 Default 項目的文字值會指定插入程式碼片段時物件的預設值。

  7. 請選擇性加入函式項目和 (或) 工具提示項目。

參考取代

建立了常值和物件之後,現在需要一個可讓您在程式碼中使用它們的方式 (該程式碼將由程式碼片段插入)。 您只要在常值或物件的 ID 項目值前後加上 $ 符號,即可參考 Declarations 項目中所宣告的常值或物件。

若要在程式碼項目中參考常值或物件

  • 請在常值或物件的 ID 項目值前後加上 $ 符號。 例如,若常值有一個值為 MyID 的 ID 項目,則您可以使用 $MyID$ 來參考 Code 項目中的這個常值。

範例

下列程式碼範例會示範同時使用 Literal 項目和 Object 項目的程式碼片段。 範例在 Code 項目中以 $SqlConnString$ 參考 SqlConnString 常值,以 $SqlConnection$ 參考 SqlConnection 物件。

<CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/CodeSnippet">
    <CodeSnippet>
        <Header>

            <!-- Add Header information here -->

        </Header>
        <Snippet>

            <!-- Add additional Snippet information here -->

            <Declarations>
                <Literal>
                    <ID>SqlConnString</ID>
                    <ToolTip>Replace with a SQL connection string.</ToolTip>
                    <Default>"SQL connection string"</Default>
                </Literal>
                <Object>
                    <ID>SqlConnection</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($SqlConnString$);
                    daCustomers.SelectCommand = selectCommand;
                    daCustomers.SelectCommand.Connection = $SqlConnection$;
                ]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

請參閱

工作

HOW TO:建立基本的程式碼片段

參考

建立和使用 IntelliSense 程式碼片段

Declarations 項目 (IntelliSense 程式碼片段)

Object 項目 (IntelliSense 程式碼片段)

Literal 項目 (IntelliSense 程式碼片段)

ID 項目 (IntelliSense 程式碼片段)

Type 項目 (IntelliSense 程式碼片段)

ToolTip 項目 (IntelliSense 程式碼片段)

Function 項目 (IntelliSense 程式碼片段)

Default 項目 (IntelliSense 程式碼片段)