Udostępnij przez


ListViewCommandEventArgs Klasa

Definicja

Udostępnia dane dla zdarzenia ItemCommand.

public ref class ListViewCommandEventArgs : System::Web::UI::WebControls::CommandEventArgs
public class ListViewCommandEventArgs : System.Web.UI.WebControls.CommandEventArgs
type ListViewCommandEventArgs = class
    inherit CommandEventArgs
Public Class ListViewCommandEventArgs
Inherits CommandEventArgs
Dziedziczenie
ListViewCommandEventArgs

Przykłady

W poniższym przykładzie pokazano, jak używać obiektu przekazywanego ListViewCommandEventArgs do programu obsługi zdarzeń.

<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  protected void EmployeesListView_OnItemCommand(object sender, ListViewCommandEventArgs e)
  {
    if (String.Equals(e.CommandName, "AddToList"))
    {
      // Verify that the employee ID is not already in the list. If not, add the
      // employee to the list.
      ListViewDataItem dataItem = (ListViewDataItem)e.Item;
      string employeeID = 
        EmployeesListView.DataKeys[dataItem.DisplayIndex].Value.ToString();
      
      if (SelectedEmployeesListBox.Items.FindByValue(employeeID) == null)
      {
        ListItem item = new ListItem(e.CommandArgument.ToString(), employeeID);
        SelectedEmployeesListBox.Items.Add(item);
      }
    }
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Employee List</title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:ListView runat="server" 
        ID="EmployeesListView"
        OnItemCommand="EmployeesListView_OnItemCommand"
        DataSourceID="EmployeesDataSource" 
        DataKeyNames="EmployeeID">
        <LayoutTemplate>
          <table runat="server" id="tblEmployees" 
                 cellspacing="0" cellpadding="1" width="440px" border="1">
            <tr id="itemPlaceholder" runat="server"></tr>
          </table>
          <asp:DataPager ID="EmployeesDataPager" runat="server" PageSize="10">
            <Fields>
              <asp:NumericPagerField />
            </Fields>
          </asp:DataPager>
        </LayoutTemplate>
        <ItemTemplate>
          <tr runat="server">
            <td>
              <asp:Label runat="server" ID="NameLabel" 
                Text='<%#Eval("LastName") + ", " + Eval("FirstName") %>' />
            </td>
            <td style="width:80px">
              <asp:LinkButton runat="server" 
                ID="SelectEmployeeButton" 
                Text="Add To List" 
                CommandName="AddToList" 
                CommandArgument='<%#Eval("LastName") + ", " + Eval("FirstName") %>' />
            </td>
          </tr>
        </ItemTemplate>
      </asp:ListView>
      
      <br /><br />
      <b>Selected Employees:</b><br />
      <asp:ListBox runat="server" ID="SelectedEmployeesListBox" Rows="10" Width="300px" />
       
      <!-- This example uses Microsoft SQL Server and connects      -->
      <!-- to the AdventureWorks sample database. Use an ASP.NET    -->
      <!-- expression to retrieve the connection string value       -->
      <!-- from the Web.config file.                                -->       
      <asp:SqlDataSource ID="EmployeesDataSource" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
        SelectCommand="SELECT [EmployeeID], [FirstName], [LastName]
                       FROM HumanResources.vEmployee
                       ORDER BY [LastName], [FirstName], [EmployeeID]">
      </asp:SqlDataSource>
    </form>
  </body>
</html>
<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  Protected Sub EmployeesListView_OnItemCommand(ByVal sender As Object, _
  ByVal e As ListViewCommandEventArgs)
    
    If String.Equals(e.CommandName, "AddToList") Then
      
      ' Verify that the employee ID is not already in the list. If not, add the
      ' employee to the list.
      Dim dataItem As ListViewDataItem = CType(e.Item, ListViewDataItem)
      Dim employeeID As String = _
        EmployeesListView.DataKeys(dataItem.DisplayIndex).Value.ToString()
      
      If SelectedEmployeesListBox.Items.FindByValue(employeeID) Is Nothing Then
        Dim item As ListItem = _
          New ListItem(e.CommandArgument.ToString(), employeeID)
        SelectedEmployeesListBox.Items.Add(item)
      End If
      
    End If
    
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title>Employee List</title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:ListView runat="server" 
        ID="EmployeesListView"
        OnItemCommand="EmployeesListView_OnItemCommand"
        DataSourceID="EmployeesDataSource" 
        DataKeyNames="EmployeeID">
        <LayoutTemplate>
          <table runat="server" id="tblEmployees" 
                 cellspacing="0" cellpadding="1" width="440px" border="1">
            <tr id="itemPlaceholder" runat="server"></tr>
          </table>
          <asp:DataPager ID="EmployeesDataPager" runat="server" PageSize="10">
            <Fields>
              <asp:NumericPagerField />
            </Fields>
          </asp:DataPager>
        </LayoutTemplate>
        <ItemTemplate>
          <tr runat="server">
            <td>
              <asp:Label runat="server" ID="NameLabel" 
                Text='<%#Eval("LastName") & ", " & Eval("FirstName") %>' />
            </td>
            <td style="width:80px">
              <asp:LinkButton runat="server" 
                ID="SelectEmployeeButton" 
                Text="Add To List" 
                CommandName="AddToList" 
                CommandArgument='<%#Eval("LastName") & ", " & Eval("FirstName") %>' />
            </td>
          </tr>
        </ItemTemplate>
      </asp:ListView>
      
      <br /><br />
      <b>Selected Employees:</b><br />
      <asp:ListBox runat="server" ID="SelectedEmployeesListBox" Rows="10" Width="300px" />
       
      <!-- This example uses Microsoft SQL Server and connects      -->
      <!-- to the AdventureWorks sample database. Use an ASP.NET    -->
      <!-- expression to retrieve the connection string value       -->
      <!-- from the Web.config file.                                -->       
      <asp:SqlDataSource ID="EmployeesDataSource" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
        SelectCommand="SELECT [EmployeeID], [FirstName], [LastName]
                       FROM HumanResources.vEmployee
                       ORDER BY [LastName], [FirstName], [EmployeeID]">
      </asp:SqlDataSource>
    </form>
  </body>
</html>

Uwagi

Zdarzenie ItemCommand jest zgłaszane po kliknięciu przycisku w kontrolce ListView . Dzięki temu można podać metodę obsługi zdarzeń, która wykonuje niestandardową procedurę przy każdym wystąpieniu tego zdarzenia.

Uwaga

Kontrolka ListView zgłasza również inne zdarzenia po kliknięciu niektórych przycisków (na przykład przycisków z właściwością ustawioną CommandName na "Usuń", "Aktualizuj" lub "Strona"). Gdy używasz jednego z tych przycisków, możesz obsługiwać jedno z wyspecjalizowanych zdarzeń dostarczanych przez kontrolkę, takich jak ItemDeleted zdarzenia lub ItemDeleting .

ListViewCommandEventArgs Obiekt jest przekazywany do metody obsługi zdarzeń, która umożliwia określenie nazwy polecenia i argumentu polecenia klikniętego przycisku. Aby określić nazwę polecenia, użyj CommandName właściwości i, aby określić argument polecenia, użyj CommandArgument właściwości . Możesz również uzyskać dostęp do kontrolki przycisku, która wywołała zdarzenie przy użyciu CommandSource właściwości .

Aby uzyskać listę początkowych wartości właściwości dla wystąpienia ListViewCommandEventArgs klasy, zobacz ListViewCommandEventArgs konstruktor.

Konstruktorów

Nazwa Opis
ListViewCommandEventArgs(ListViewItem, Object, CommandEventArgs)

Inicjuje nowe wystąpienie ListViewCommandEventArgs klasy przy użyciu określonego źródła argumentów polecenia i zdarzeń.

Właściwości

Nazwa Opis
CommandArgument

Pobiera argument polecenia .

(Dziedziczone od CommandEventArgs)
CommandName

Pobiera nazwę polecenia.

(Dziedziczone od CommandEventArgs)
CommandSource

Pobiera źródło polecenia.

Handled

Pobiera lub ustawia wartość wskazującą, czy kontrolka obsłużyła zdarzenie.

Item

Pobiera element danych, dla którego zostało wydane polecenie.

Metody

Nazwa Opis
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Dziedziczone od Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Dziedziczone od Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Dziedziczone od Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Dziedziczone od Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Dziedziczone od Object)

Dotyczy

Zobacz także