Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

ImageMapEventHandler délégué

 

Date de publication : novembre 2016

Représente la méthode qui gère les Click événements d’un ImageMap contrôle.

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

public delegate void ImageMapEventHandler(
	object sender,
	ImageMapEventArgs e
)

Paramètres

sender
Type: System.Object

Source de l'événement.

e
Type: System.Web.UI.WebControls.ImageMapEventArgs

L’argument de type ImageMapEventArgs qui contient les données d’événement.

Lorsque vous créez un ImageMapEventHandler délégué, vous identifiez la méthode qui gère l’événement. Pour associer l'événement au gestionnaire d'événements, ajoutez une instance du délégué à l'événement. Le gestionnaire d'événements est appelé chaque fois qu'un é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 la page NIB : événements et délégués.

L’exemple de code suivant montre comment créer un gestionnaire d’événements pour le Click événement. Le ImageMap contrôle contient deux RectangleHotSpot objets. Le ImageMap.HotSpotMode est définie sur HotSpotMode.PostBack, ce qui entraîne la page publication sur le serveur chaque fois qu’un utilisateur clique sur l’un de la RectangleHotSpot objets. Le Click événement est géré par le VoteMap_Clicked Gestionnaire d’événements. Pour cet exemple fonctionne correctement, vous devez fournir votre propre image pour la ImageUrl propriété et mettre à jour le chemin d’accès à l’image de façon à ce que l’application peut le localiser.

<%@ 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 VoteMap_Clicked (Object sender, ImageMapEventArgs e)
  {
    string coordinates;
    string hotSpotType;
    int yescount = ((ViewState["yescount"] != null)? (int)ViewState["yescount"] : 0);
    int nocount = ((ViewState["nocount"] != null)? (int)ViewState["nocount"] : 0);

    // When a user clicks the "Yes" hot spot,
    // display the hot spot's name and coordinates.
    if (e.PostBackValue.Contains("Yes"))
    {
      yescount += 1;
      coordinates = Vote.HotSpots[0].GetCoordinates();
      hotSpotType = Vote.HotSpots[0].ToString ();
      Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue + ".<br />" +
                      "The coordinates are " + coordinates + ".<br />" +
                      "The current vote count is " + yescount.ToString() + 
            " yes votes and " + nocount.ToString() + " no votes.";
    }

    // When a user clicks the "No" hot spot,
    // display the hot spot's name and coordinates.
    else if (e.PostBackValue.Contains("No"))
    {
      nocount += 1;
      coordinates = Vote.HotSpots[1].GetCoordinates();
      hotSpotType = Vote.HotSpots[1].ToString ();
      Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue + ".<br />" +
                      "The coordinates are " + coordinates + ".<br />" +
            "The current vote count is " + yescount.ToString() +
            " yes votes and " + nocount.ToString() + " no votes.";
    }

    else
    {
      Message1.Text = "You did not click a valid hot spot region.";
    }

    ViewState["yescount"] = yescount;
    ViewState["nocount"] = nocount;
  }           

</script>

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

      <h3>ImageMap Class Post Back Example</h3>

      <asp:imagemap id="Vote"           
        imageurl="Images/VoteImage.jpg"
        width="400" 
        height="200" 
        alternatetext="Vote Yes or No"
        hotspotmode="PostBack"
        onclick="VoteMap_Clicked"
        runat="Server">            

        <asp:RectangleHotSpot          
          top="0"
          left="0"
          bottom="200"
          right="200"
          postbackvalue="Yes"
          alternatetext="Vote yes">
        </asp:RectangleHotSpot>

        <asp:RectangleHotSpot 
          top="0"
          left="201"
          bottom="200"
          right="400"
          postbackvalue="No"
          alternatetext="Vote no">
        </asp:RectangleHotSpot>

      </asp:imagemap>

      <br /><br />

      <asp:label id="Message1"
        runat="Server">
      </asp:label>                 

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

.NET Framework
Disponible depuis 2.0
Retour au début
Afficher: