Exporter (0) Imprimer
Développer tout
Développer Réduire

GridViewRowEventHandler, délégué

Remarque : ce délégué est nouveau dans le .NET Framework version 2.0.

Représente la méthode qui gère les événements RowCreated et RowDataBound d'un contrôle GridView.

Espace de noms : System.Web.UI.WebControls
Assembly : System.Web (dans system.web.dll)

public delegate void GridViewRowEventHandler (
	Object sender,
	GridViewRowEventArgs e
)
/** @delegate */
public delegate void GridViewRowEventHandler (
	Object sender, 
	GridViewRowEventArgs e
)
JScript prend en charge l'utilisation de délégués mais pas la déclaration de nouveaux délégués.

Paramètres

sender

Source de l'événement.

e

Objet GridViewRowEventArgs qui contient les données d'événement.

Avant que le contrôle GridView ne puisse être rendu, un objet GridViewRow doit être créé pour chaque ligne du contrôle. L'événement RowCreated est déclenché chaque fois qu'une ligne figurant dans le contrôle GridView est créée. Cela vous permet de fournir une méthode de gestion d'événements qui exécute une routine personnalisée, par exemple l'ajout d'un contenu personnalisé à une ligne, chaque fois que cet événement se produit.

De même, chaque ligne du contrôle doit être liée à un enregistrement dans la source de données avant que le contrôle GridView ne puisse être rendu. L'événement RowDataBound est déclenché lorsqu'une ligne de données (représentée par un objet GridViewRow) est liée aux données du contrôle GridView. Cela vous permet de fournir une méthode de gestion d'événements qui exécute une routine personnalisée, par exemple la modification des données liées à la ligne, chaque fois que cet événement se produit.

Lorsque vous créez un délégué GridViewRowEventHandler, vous spécifiez la méthode qui gérera l'événement. Pour associer l'événement à votre gestionnaire d'événements, ajoutez une instance du délégué à l'événement. Le gestionnaire d'événements est appelé chaque fois que l'événement se produit, sauf si vous supprimez le délégué. Pour plus d'informations sur les délégués de gestionnaires d'événements, consultez Événements et délégués.

L'exemple suivant montre comment ajouter par programme un délégué GridViewRowEventHandler à l'événement RowDataBound d'un contrôle GridView.


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

<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {
        
    // Create a new GridView control.
    GridView customersGridView = new GridView();
         
    // Set the GridView control's properties.
    customersGridView.ID = "CustomersGridView";
    customersGridView.DataSourceID = "CustomersSqlDataSource";
    customersGridView.AutoGenerateColumns = true;
    customersGridView.AllowPaging = true;

    // Programmatically register the event-handling method.
    customersGridView.RowDataBound += new GridViewRowEventHandler(this.CustomersGridView_RowDataBound);
       
    // Add the GridView control to the Controls collection
    // of the PlaceHolder control.
    GridViewPlaceHolder.Controls.Add(customersGridView);

  }

  void CustomersGridView_RowDataBound(Object sender, GridViewRowEventArgs e)
  {
        
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      // Display the company name in italics.
      e.Row.Cells[1].Text = "<i>" + e.Row.Cells[1].Text + "</i>";
        
    }
    
  }

</script>

<html>
  <body>
    <form runat="server">
        
      <h3>GridViewRowEventHandler Example</h3>

      <asp:placeholder id="GridViewPlaceHolder"
        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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
            
    </form>
  </body>
</html>


L'exemple suivant montre comment ajouter de façon déclarative un délégué GridViewRowEventHandler à l'événement RowDataBound d'un contrôle GridView.


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

<script runat="server">

  void CustomersGridView_RowDataBound(Object sender, GridViewRowEventArgs e)
  {
        
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      // Display the company name in italics.
      e.Row.Cells[1].Text = "<i>" + e.Row.Cells[1].Text + "</i>";
        
    }
    
  }

</script>

<html>
  <body>
    <form runat="server">
        
      <h3>GridView RowDataBound Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="true"
        allowpaging="true"
        onrowdatabound="CustomersGridView_RowDataBound" 
        runat="server">
      </asp:gridview>
            
      <!-- 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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
            
    </form>
  </body>
</html>


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft