ListView.InsertItemTemplate Właściwość

Definicja

Pobiera lub ustawia zawartość niestandardową dla elementu INSERT w ListView kontrolce.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

Wartość właściwości

ITemplate

Obiekt, który zawiera niestandardową zawartość dla elementu INSERT w ListView kontrolce.An object that contains the custom content for the insert item in the ListView control. Wartość domyślna to null , co oznacza, że ta właściwość nie jest ustawiona.The default is null, which indicates that this property is not set.

Atrybuty

Przykłady

Poniższy przykład pokazuje, jak zdefiniować szablon niestandardowy dla elementu INSERT ListView formantu.The following example shows how to define a custom template for the insert item of a ListView control. Ten przykład kodu jest częścią większego przykładu dostarczonego dla ItemInserted zdarzenia.This code example is part of a larger example provided for the ItemInserted event.

Ważne

Ten przykład zawiera pole tekstowe akceptujące dane wejściowe użytkownika, które jest potencjalnym zagrożeniem bezpieczeństwa.This example has a text box that accepts user input, which is a potential security threat. Domyślnie strony sieci Web ASP.NET sprawdzają, czy dane wejściowe użytkownika nie obejmują elementów skryptu ani HTML.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Aby uzyskać więcej informacji, zobacz Omówienie luk w zabezpieczeniach.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>

Uwagi

Użyj InsertItemTemplate właściwości, aby zdefiniować niestandardowy interfejs użytkownika (UI) dla elementu INSERT w ListView kontrolce.Use the InsertItemTemplate property to define a custom user interface (UI) for the insert item in the ListView control. Ten interfejs użytkownika jest renderowany na początku lub na końcu wyświetlanych elementów.This UI is rendered either at the start or at the end of the displayed items. Należy określić lokalizację, w której interfejs użytkownika jest renderowany przy użyciu InsertItemPosition właściwości.You specify where the UI is rendered by using the InsertItemPosition property.

InsertItemTemplateSzablon zawiera zazwyczaj kontrolki wprowadzania dla użytkownika, aby wprowadzić wartości dla nowego rekordu.The InsertItemTemplate template usually contains the input controls for the user to enter the values for a new record. Zwykle zawiera również przyciski lub hiperłącza umożliwiające wstawienie rekordu i anulowanie operacji wstawiania.It also usually contains buttons or hyperlinks to insert the record and to cancel the insert operation.

Aby określić szablon niestandardowy w sposób deklaratywny, Dodaj InsertItemTemplate element wewnątrz ListView elementu.To specify the custom template declaratively, add an InsertItemTemplate element inside the ListView element. Następnie można dodać zawartość szablonu do InsertItemTemplate elementu.You can then add the contents of the template to the InsertItemTemplate element. Można skojarzyć pole z kontrolką wejściową przy użyciu dwukierunkowego wyrażenia powiązania.You can associate a field with an input control by using a two-way binding expression. Po wstawieniu rekordu, ListView formant automatycznie wyodrębnia wartość pola ze skojarzonej kontrolki wejściowej.When a record is inserted, the ListView control automatically extracts the field value from the associated input control. Aby uzyskać więcej informacji, zobacz wyrażenia powiązań danych — omówienie.For more information, see Data-Binding Expressions Overview.

Aby utworzyć przyciski, które wykonują wbudowane operacje anulowania i wstawiania, Dodaj kontrolkę przycisk do szablonu.To create buttons that perform the built-in cancel and insert operations, add a button control to the template. Ustaw jej CommandName Właściwość na jedną z wartości wymienionych w poniższej tabeli.Set its CommandName property to one of the values listed in the following table.

Typ przyciskuButton type Wartość poleceniaCommandName value
AnulujCancel Anulowania"Cancel"
InsertInsert Wstawienia"Insert"

Można kontrolować położenie wstawianego elementu w ListView kontrolce przy użyciu InsertItemPosition właściwości.You can control the position of the insert item in the ListView control by using the InsertItemPosition property.

Dotyczy

Zobacz też