ListView.InsertItemTemplate Свойство

Определение

Возвращает или задает пользовательское содержимое для элемента вставки в элементе управления 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; }
[<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)>]
member this.InsertItemTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property InsertItemTemplate As ITemplate

Значение свойства

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, проверяются на наличие скриптов и 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 для определения пользовательского пользовательского интерфейса для элемента вставки в ListView элементе управления.Use the InsertItemTemplate property to define a custom user interface (UI) for the insert item in the ListView control. Этот пользовательский интерфейс отображается либо в начале, либо в конце отображаемых элементов.This UI is rendered either at the start or at the end of the displayed items. Вы указываете, где отображается пользовательский интерфейс, с помощью 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"
Атрибут InsertInsert Вставляет"Insert"

Можно управлять положением элемента вставки в ListView элементе управления с помощью InsertItemPosition Свойства.You can control the position of the insert item in the ListView control by using the InsertItemPosition property.

Применяется к

См. также раздел