Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês
Esta documentação foi arquivada e não está sendo atualizada.

Classe DetailsViewCommandEventArgs

Provides data for the ItemCommand event.

System.Object
  System.EventArgs
    System.Web.UI.WebControls.CommandEventArgs
      System.Web.UI.WebControls.DetailsViewCommandEventArgs

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (em System.Web.dll)

public class DetailsViewCommandEventArgs : CommandEventArgs

O tipo DetailsViewCommandEventArgs expõe os membros a seguir.

  NomeDescrição
Método públicoDetailsViewCommandEventArgsInitializes a new instance of the DetailsViewCommandEventArgs class.
Início

  NomeDescrição
Propriedade públicaCommandArgumentObtém o argumento para o comando. (Herdado de CommandEventArgs.)
Propriedade públicaCommandNameObtém o nome do comando. (Herdado de CommandEventArgs.)
Propriedade públicaCommandSourceObtém a fonte do comando.
Início

  NomeDescrição
Método públicoEquals(Object) Determina se o Object especificado é igual ao Object atual. (Herdado de Object.)
Método protegidoFinalize Permite que um objeto tente liberar recursos e executar outras operações de limpeza antes que ele seja recuperado pela coleta de lixo. (Herdado de Object.)
Método públicoGetHashCodeServe como uma função hash para um tipo específico. (Herdado de Object.)
Método públicoGetType Obtém o Type da instância atual. (Herdado de Object.)
Método protegidoMemberwiseCloneCria uma cópia superficial do Object atual. (Herdado de Object.)
Método públicoToStringRetorna uma string que representa o objeto atual. (Herdado de Object.)
Início

O DetailsView controle gera a ItemCommand evento quando um botão em um ButtonField, CommandField, ou TemplateField campo de linha é clicado. Isso permite que você forneça um manipulador de eventos que executa uma rotina personalizada sempre que esse evento ocorre.

ObservaçãoObservação

O DetailsView controle também gera outros eventos especializados quando certos botões são clicados (botões com o CommandName propriedade definida como "Excluir", "Inserir", "Página" ou "Update"). Ao usar um desses botões, você deve considerar o uso de um dos eventos especializados fornecidos pelo controle (como ItemDeleted ou ItemDeleting).

Um DetailsViewCommandEventArgs objeto é passado para o manipulador de eventos. Se o botão que disparou o evento tem um nome de comando ou valor de argumento de comando, você pode usar o DetailsViewCommandEventArgs o objeto para determinar esses valores. Para determinar o nome de comando e o argumento de comando do botão clicado, use o CommandName e CommandArgument Propriedades, respectivamente. Você também pode acessar o DetailsView o controle que disparou o evento usando o CommandSource propriedade.

Para obter uma lista dos valores de propriedade inicial de uma instância da DetailsViewCommandEventArgs da classe, consulte a DetailsViewCommandEventArgs construtor.

O exemplo de código a seguir demonstra como usar o DetailsViewCommandEventArgs objeto passado para o manipulador de eventos para o ItemCommand evento para determinar o nome de comando do botão clicado pelo usuário. Este exemplo usa o modelo de codificação de arquivo único.



<%@ 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">

  void ItemDetailsView_ItemCommand(Object sender, 
      DetailsViewCommandEventArgs e)
  {

    // Use the CommandName property to determine which button
    // was clicked. 
    if (e.CommandName == "Add")
    {

      // Add the customer to the customer list. 

      // Get the row that contains the company name. In this
      // example, the company name is in the second row (index 1)  
      // of the DetailsView control.
      DetailsViewRow row = ItemDetailsView.Rows[1];

      // Get the company's name from the appropriate cell.
      // In this example, the company name is in the second cell  
      // (index 1) of the row.
      String name = row.Cells[1].Text;

      // Create a ListItem object with the company name.
      ListItem item = new ListItem(name);

      // Add the ListItem object to the ListBox control, if the 
      // item does not already exist.
      if (!CustomerListBox.Items.Contains(item))
      {
        CustomerListBox.Items.Add(item);
      }

    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewCommandEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>DetailsViewCommandEventArgs Example</h3>

      <asp:detailsview id="ItemDetailsView"
        datasourceid="DetailsViewSource"
        allowpaging="true"
        autogeneraterows="false" 
        onitemcommand="ItemDetailsView_ItemCommand"  
        runat="server">
        <fields>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID"/>
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
          <asp:buttonfield buttontype="Link"
            causesvalidation="false"
            text="Add to List"
            commandname="Add"/>
        </fields>
      </asp:detailsview>

      <br/><br/>

      Selected Customers:<br/>
      <asp:listbox id="CustomerListBox"
        runat="server"/>

      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="DetailsViewSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], 
          [City], [PostalCode], [Country] From [Customers]"
        connectionstring=
            "<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>  

    </form>
  </body>
</html>


O exemplo de código a seguir mostra uma versão de modelo de codificação de code-behind do exemplo anterior. Para esse exemplo funcione, você deve copiar o código abaixo no arquivo code-behind associado.


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewCommandEventArgs Example</title>
</head>
<body>
    <form id="Form1" runat="server">

      <h3>DetailsViewCommandEventArgs Example</h3>

      <asp:detailsview id="ItemDetailsView"
        datasourceid="DetailsViewSource"
        allowpaging="true"
        autogeneraterows="false" 
        onitemcommand="ItemDetailsView_ItemCommand"  
        runat="server">
        <fields>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID"/>
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
          <asp:buttonfield buttontype="Link"
            causesvalidation="false"
            text="Add to List"
            commandname="Add"/>
        </fields>
      </asp:detailsview>

      <br/><br/>

      Selected Customers:<br/>
      <asp:listbox id="CustomerListBox"
        runat="server"/>

      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="DetailsViewSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>  

    </form>
  </body>
</html>


O exemplo de código a seguir mostra o arquivo de code-behind no exemplo anterior.


using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
	public void ItemDetailsView_ItemCommand(Object sender, DetailsViewCommandEventArgs e)
	{

		// Use the CommandName property to determine which button
		// was clicked. 
		if (e.CommandName == "Add")
		{

			// Add the customer to the customer list. 

			// Get the row that contains the company name. In this
			// example, the company name is in the second row (index 1)  
			// of the DetailsView control.
			DetailsViewRow row = ItemDetailsView.Rows[1];

			// Get the company's name from the appropriate cell.
			// In this example, the company name is in the second cell  
			// (index 1) of the row.
			String name = row.Cells[1].Text;

			// Create a ListItem object with the company name.
			ListItem item = new ListItem(name);

			// Add the ListItem object to the ListBox control, if the 
			// item does not already exist.
			if (!CustomerListBox.Items.Contains(item))
			{
				CustomerListBox.Items.Add(item);
			}

		}

	}
}


.NET Framework

Com suporte em: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 ou posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core não compatível), Windows Server 2008 R2 (Server Core não compatível com SP1 ou posterior), Windows Server 2003 SP2

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos de sistema do .NET Framework.

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.
Mostrar: