ListView.InsertItemTemplate ListView.InsertItemTemplate ListView.InsertItemTemplate ListView.InsertItemTemplate Property

定義

ListView コントロールの挿入項目に対するカスタム コンテンツを取得または設定します。Gets or sets the custom content for an insert item in the ListView control.

public:
 virtual property System::Web::UI::ITemplate ^ InsertItemTemplate { System::Web::UI::ITemplate ^ get(); void set(System::Web::UI::ITemplate ^ value); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
[System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.ListViewItem), System.ComponentModel.BindingDirection.TwoWay)]
public virtual System.Web.UI.ITemplate InsertItemTemplate { get; set; }
member this.InsertItemTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property InsertItemTemplate As ITemplate

プロパティ値

ListView コントロールの挿入項目に対するカスタム コンテンツが格納されたオブジェクト。An object that contains the custom content for the insert item in the ListView control. 既定値は null です。このプロパティが設定されていないことを示します。The default is null, which indicates that this property is not set.

次の例の挿入項目に対するカスタム テンプレートを定義する方法を示しています、ListViewコントロール。The following example shows how to define a custom template for the insert item of a ListView control. このコード例が示されている例の一部、ItemInsertedイベント。This code example is part of a larger example provided for the ItemInserted event.

重要

この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。This example has a text box that accepts user input, which is a potential security threat. 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。By default, ASP.NET Web pages validate that user input does not include script or HTML elements. 詳細については、「スクリプトによる攻略の概要」を参照してください。For more information, see Script Exploits Overview.

<asp:ListView ID="ContactsListView" 
  DataSourceID="ContactsDataSource" 
  DataKeyNames="ContactID"
  OnItemInserted="ContactsListView_ItemInserted"  
  InsertItemPosition="LastItem"
  runat="server">
  <LayoutTemplate>
    <table cellpadding="2" border="1" runat="server" id="tblContacts" width="640px">
      <tr runat="server" id="itemPlaceholder" />
    </table>
    <asp:DataPager runat="server" ID="PeopleDataPager" PageSize="12">
      <Fields>
        <asp:NextPreviousPagerField 
          ShowFirstPageButton="true" ShowLastPageButton="true"
          FirstPageText="|&lt;&lt; " LastPageText=" &gt;&gt;|"
          NextPageText=" &gt; " PreviousPageText=" &lt; " />
      </Fields>
    </asp:DataPager>
  </LayoutTemplate>
  <ItemTemplate>
    <tr runat="server">
      <td valign="top">
        <asp:Label ID="FirstNameLabel" runat="server" Text='<%#Eval("FirstName") %>' />
        <asp:Label ID="LastNameLabel" runat="server" Text='<%#Eval("LastName") %>' />
      </td>
      <td>&nbsp;
        <asp:Label ID="EmailLabel" runat="server" Text='<%#Eval("EmailAddress") %>' />
      </td>
    </tr>
  </ItemTemplate>
  <InsertItemTemplate>
    <tr style="background-color:#D3D3D3">
      <td valign="top">
        <asp:Label runat="server" ID="FirstNameLabel" 
          AssociatedControlID="FirstNameTextBox" Text="First Name"/>
        <asp:TextBox ID="FirstNameTextBox" runat="server" 
          Text='<%#Bind("FirstName") %>' /><br />
        <asp:Label runat="server" ID="LastNameLabel" 
          AssociatedControlID="LastNameTextBox" Text="Last Name" />
        <asp:TextBox ID="LastNameTextBox" runat="server" 
          Text='<%#Bind("LastName") %>' /><br />
        <asp:Label runat="server" ID="EmailLabel" 
          AssociatedControlID="EmailTextBox" Text="Email" />
        <asp:TextBox ID="EmailTextBox" runat="server" 
          Text='<%#Bind("EmailAddress") %>' />
      </td>
      <td>
        <asp:LinkButton ID="InsertButton" runat="server" 
          CommandName="Insert" Text="Insert" />
      </td>
    </tr>
  </InsertItemTemplate>
</asp:ListView>
<asp:ListView ID="ContactsListView" 
  DataSourceID="ContactsDataSource" 
  DataKeyNames="ContactID"
  OnItemInserted="ContactsListView_ItemInserted"  
  InsertItemPosition="LastItem"
  runat="server">
  <LayoutTemplate>
    <table cellpadding="2" border="1" runat="server" id="tblContacts" width="640px">
      <tr runat="server" id="itemPlaceholder" />
    </table>
    <asp:DataPager runat="server" ID="PeopleDataPager" PageSize="12">
      <Fields>
        <asp:NextPreviousPagerField 
          ShowFirstPageButton="true" ShowLastPageButton="true"
          FirstPageText="|&lt;&lt; " LastPageText=" &gt;&gt;|"
          NextPageText=" &gt; " PreviousPageText=" &lt; " />
      </Fields>
    </asp:DataPager>
  </LayoutTemplate>
  <ItemTemplate>
    <tr runat="server">
      <td valign="top">
        <asp:Label ID="FirstNameLabel" runat="server" Text='<%#Eval("FirstName") %>' />
        <asp:Label ID="LastNameLabel" runat="server" Text='<%#Eval("LastName") %>' />
      </td>
      <td>&nbsp;
        <asp:Label ID="EmailLabel" runat="server" Text='<%#Eval("EmailAddress") %>' />
      </td>
    </tr>
  </ItemTemplate>
  <InsertItemTemplate>
    <tr style="background-color:#D3D3D3">
      <td valign="top">
        <asp:Label runat="server" ID="FirstNameLabel" 
          AssociatedControlID="FirstNameTextBox" Text="First Name"/>
        <asp:TextBox ID="FirstNameTextBox" runat="server" 
          Text='<%#Bind("FirstName") %>' /><br />
        <asp:Label runat="server" ID="LastNameLabel" 
          AssociatedControlID="LastNameTextBox" Text="Last Name" />
        <asp:TextBox ID="LastNameTextBox" runat="server" 
          Text='<%#Bind("LastName") %>' /><br />
        <asp:Label runat="server" ID="EmailLabel" 
          AssociatedControlID="EmailTextBox" Text="Email" />
        <asp:TextBox ID="EmailTextBox" runat="server" 
          Text='<%#Bind("EmailAddress") %>' />
      </td>
      <td>
        <asp:LinkButton ID="InsertButton" runat="server" 
          CommandName="Insert" Text="Insert" />
      </td>
    </tr>
  </InsertItemTemplate>
</asp:ListView>

注釈

使用して、InsertItemTemplateの挿入項目に対するカスタム ユーザー インターフェイス (UI) を定義するプロパティ、ListViewコントロール。Use the InsertItemTemplate property to define a custom user interface (UI) for the insert item in the ListView control. この UI は、開始時または表示されている項目の最後に表示されます。This UI is rendered either at the start or at the end of the displayed items. 使用して、UI が表示される場所を指定する、InsertItemPositionプロパティ。You specify where the UI is rendered by using the InsertItemPosition property.

InsertItemTemplateテンプレートには、通常は新しいレコードの値を入力するユーザーの入力コントロールが含まれます。The InsertItemTemplate template usually contains the input controls for the user to enter the values for a new record. ボタンやハイパーリンクのレコードを挿入する挿入操作をキャンセルして、通常は含まれています。It also usually contains buttons or hyperlinks to insert the record and to cancel the insert operation.

カスタム テンプレートを宣言によって指定するには、追加、InsertItemTemplate内の要素、ListView要素。To specify the custom template declaratively, add an InsertItemTemplate element inside the ListView element. テンプレートの内容を追加することができますし、InsertItemTemplate要素。You can then add the contents of the template to the InsertItemTemplate element. 双方向のバインド式を使用して、入力コントロールにフィールドを関連付けることができます。You can associate a field with an input control by using a two-way binding expression. レコードが挿入されるときに、ListViewコントロールは、関連付けられている入力コントロールからのフィールドの値を自動的に抽出します。When a record is inserted, the ListView control automatically extracts the field value from the associated input control. 詳細については、次を参照してください。データ バインド式の概要します。For more information, see Data-Binding Expressions Overview.

組み込みのキャンセルを実行し、操作を挿入するボタンを作成するには、テンプレートにボタン コントロールを追加します。To create buttons that perform the built-in cancel and insert operations, add a button control to the template. 設定のCommandNameプロパティの値のいずれかを次の表に記載します。Set its CommandName property to one of the values listed in the following table.

[ボタンの種類]Button type CommandName 値CommandName value
キャンセルCancel [キャンセル]"Cancel"
挿入Insert "Insert""Insert"

挿入項目の位置を制御することができます、ListViewコントロールを使用して、InsertItemPositionプロパティ。You can control the position of the insert item in the ListView control by using the InsertItemPosition property.

適用対象

こちらもご覧ください