Suggérer une traduction
 
Suggestions d'autres utilisateurs :

progress indicator
Aucune autre suggestion.
Cliquez pour évaluer et commenter
MSDN
MSDN Library
Développement .NET
.NET Framework 4
Espaces de noms System.Web
System.Web.UI.WebControls
PolygonHotSpot, classe
Réduire tout/Développer tout Réduire tout
Affichage du contenu :  côte à côteAffichage du contenu : côte à côte
.NET Framework Class Library
PolygonHotSpot Class

Defines a polygon-shaped hot spot region in an ImageMap control. This class cannot be inherited.

System..::.Object
  System.Web.UI.WebControls..::.HotSpot
    System.Web.UI.WebControls..::.PolygonHotSpot

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)
Visual Basic
Public NotInheritable Class PolygonHotSpot _
    Inherits HotSpot
C#
public sealed class PolygonHotSpot : HotSpot
Visual C++
public ref class PolygonHotSpot sealed : public HotSpot
F#
[<Sealed>]
type PolygonHotSpot =  
    class
        inherit HotSpot
    end

The PolygonHotSpot type exposes the following members.

  NameDescription
Public methodPolygonHotSpotInitializes a new instance of the PolygonHotSpot class.
Top
  NameDescription
Public propertyAccessKeyGets or sets the access key that allows you to quickly navigate to the HotSpot region. (Inherited from HotSpot.)
Public propertyAlternateTextGets or sets the alternate text to display for a HotSpot object in an ImageMap control when the image is unavailable or renders to a browser that does not support images. (Inherited from HotSpot.)
Public propertyCoordinatesA string of coordinates that represents the vertexes of a PolygonHotSpot object.
Public propertyHotSpotModeGets or sets the behavior of a HotSpot object in an ImageMap control when the HotSpot is clicked. (Inherited from HotSpot.)
Protected propertyIsTrackingViewStateGets a value indicating whether the HotSpot object is tracking its view-state changes. (Inherited from HotSpot.)
Protected propertyMarkupNameWhen overridden in a derived class, gets the string representation for the HotSpot object's shape. (Inherited from HotSpot.)
Public propertyNavigateUrlGets or sets the URL to navigate to when a HotSpot object is clicked. (Inherited from HotSpot.)
Public propertyPostBackValueGets or sets the name of the HotSpot object to pass in the event data when the HotSpot is clicked. (Inherited from HotSpot.)
Public propertyTabIndexGets or sets the tab index of the HotSpot region. (Inherited from HotSpot.)
Public propertyTargetGets or sets the target window or frame in which to display the Web page content linked to when a HotSpot object that navigates to a URL is clicked. (Inherited from HotSpot.)
Protected propertyViewStateGets a dictionary of state information that allows you to save and restore the view state of a HotSpot object across multiple requests for the same page. (Inherited from HotSpot.)
Top
  NameDescription
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetCoordinatesReturns a string that represents the coordinates of the vertexes of a PolygonHotSpot object. (Overrides HotSpot..::.GetCoordinates()()().)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodLoadViewStateRestores the HotSpot object's previously saved view state to the object. (Inherited from HotSpot.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodSaveViewStateSaves the changes to the HotSpot object's view state since the time the page was posted back to the server. (Inherited from HotSpot.)
Public methodToStringReturns the String representation of this instance of a HotSpot object. (Inherited from HotSpot.)
Protected methodTrackViewStateCauses the HotSpot object to track changes to its view state so they can be stored in the object's StateBag object. This object is accessible through the Control..::.ViewState property. (Inherited from HotSpot.)
Top
  NameDescription
Explicit interface implemetationPrivate propertyIStateManager..::.IsTrackingViewStateInfrastructure. Gets a value indicating whether the HotSpot object is tracking its view-state changes. (Inherited from HotSpot.)
Explicit interface implemetationPrivate methodIStateManager..::.LoadViewStateInfrastructure. Restores the HotSpot object's previously saved view state to the object. (Inherited from HotSpot.)
Explicit interface implemetationPrivate methodIStateManager..::.SaveViewStateInfrastructure. Saves the changes to the HotSpot object's view state since the last time the page was posted back to the server. (Inherited from HotSpot.)
Explicit interface implemetationPrivate methodIStateManager..::.TrackViewStateInfrastructure. Instructs the HotSpot region to track changes to its view state. (Inherited from HotSpot.)
Top

This class defines a polygon-shaped hot spot region in an ImageMap control. The PolygonHotSpot is useful for defining irregularly shaped hot spot regions in an ImageMap control. For example, you can use it to define individual regions within a geographical map.

To define the region of a PolygonHotSpot, set the Coordinates property to a string that specifies the coordinates of each vertex of the PolygonHotSpot object. A polygon vertex is a point at which two polygon edges meet.

When a PolygonHotSpot object is clicked, the page navigates to a URL, generates a post back to the server, or does nothing. The HotSpotMode property specifies this behavior. To navigate to a URL, set the HotSpotMode property to HotSpotMode.Navigate, and use the NavigateUrl property to specify the URL to navigate to. To post back to the server, set the HotSpotMode property to HotSpotMode.PostBack, and use the PostBackValue property to specify a name for the PolygonHotSpot object. This name will be passed in the ImageMapEventArgs event data when the PolygonHotSpot is clicked. If you want the PolygonHotSpot object to have no behavior, set the HotSpotMode property to HotSpotMode.Inactive.

TopicLocation
Comment : ajouter des contrôles serveur Web ImageMap à une page Web FormsGénération d'applications Web ASP.NET

The following code example demonstrates how to create an ImageMap control that contains three PolygonHotSpot objects. Each PolygonHotSpot object represents a geographical region on the map. When the user clicks a PolygonHotSpot object, it posts back to the server and the type and name of the hot spot are displayed in a label.

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

  Sub RegionMap_Clicked(ByVal sender As Object, ByVal e As ImageMapEventArgs)
    Dim hotSpotType As String

    ' When a user clicks a hot spot, display
    ' the hot spot's type and name.
    Select Case (e.PostBackValue)

      Case ("Western")
        hotSpotType = Regions.HotSpots(0).ToString()
        Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue

      Case ("Northern")
        hotSpotType = Regions.HotSpots(1).ToString()
        Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue

      Case ("Southern")
        hotSpotType = Regions.HotSpots(2).ToString()
        Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue

      Case Else
        Message1.Text = "You did not click a valid hot spot region."

    End Select

  End Sub

</script>

<html  >
<head id="Head1" runat="server">
  <title>PolygonHotSpot Class Example</title>
</head>
  <body>
    <form id="Form1" runat="server">

      <h3>PolygonHotSpot Example</h3>

      <!-- Change or remove the width and height attributes as
           appropriate for your image. -->
      <asp:imagemap id="Regions"           
        imageurl="Images/RegionMap.jpg"
        alternatetext="Sales regions" 
        hotspotmode="PostBack"
        width="400"
        height="400"
        onclick="RegionMap_Clicked"   
        runat="Server">            

        <asp:PolygonHotSpot 
          coordinates="0,0,176,0,125,182,227,400,0,400"         
          postbackvalue="Western"
          alternatetext="Western Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="177,0,400,0,400,223,335,154,127,180"         
          postbackvalue="Northern"
          alternatetext="Northern Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="128,185,335,157,400,224,400,400,228,400"         
          postbackvalue="Southern"
          alternatetext="Southern Region">
        </asp:PolygonHotSpot>

      </asp:imagemap>

      <br /><br />

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

    </form>      
  </body>
</html>
C#
<%@ 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 RegionMap_Clicked (object sender, ImageMapEventArgs e)
  {
    string hotSpotType;

    // When a user clicks a hot spot, display
    // the hot spot's type and name.
    switch (e.PostBackValue)
    {
      case "Western":
        hotSpotType = Regions.HotSpots[0].ToString();
        Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
        break;

      case "Northern":
        hotSpotType = Regions.HotSpots[1].ToString();
        Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
        break;

      case "Southern":
        hotSpotType = Regions.HotSpots[2].ToString();
        Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
        break;

      default:
        Message1.Text = "You did not click a valid hot spot region.";
        break;
    }
  }  

</script>

<html  >
<head id="Head1" runat="server">
  <title>PolygonHotSpot Class Example</title>
</head>
  <body>
    <form id="Form1" runat="server">

      <h3>PolygonHotSpot Example</h3>

      <!-- Change or remove the width and height attributes as
           appropriate for your image. -->
      <asp:imagemap id="Regions"           
        imageurl="Images/RegionMap.jpg"
        alternatetext="Sales regions" 
        hotspotmode="PostBack"
        width="400"
        height="400"
        onclick="RegionMap_Clicked"   
        runat="Server">            

        <asp:PolygonHotSpot 
          coordinates="0,0,176,0,125,182,227,400,0,400"         
          postbackvalue="Western"
          alternatetext="Western Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="177,0,400,0,400,223,335,154,127,180"         
          postbackvalue="Northern"
          alternatetext="Northern Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="128,185,335,157,400,224,400,400,228,400"         
          postbackvalue="Southern"
          alternatetext="Southern Region">
        </asp:PolygonHotSpot>

      </asp:imagemap>

      <br /><br />

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

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

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role not supported), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Bibliothèque de classes .NET Framework
PolygonHotSpot, classe

Définit une zone réactive en forme de polygone dans un contrôle ImageMap. Cette classe ne peut pas être héritée.

System..::.Object
  System.Web.UI.WebControls..::.HotSpot
    System.Web.UI.WebControls..::.PolygonHotSpot

Espace de noms :  System.Web.UI.WebControls
Assembly :  System.Web (dans System.Web.dll)
Visual Basic
Public NotInheritable Class PolygonHotSpot _
    Inherits HotSpot
C#
public sealed class PolygonHotSpot : HotSpot
VisualC++
public ref class PolygonHotSpot sealed : public HotSpot
F#
[<Sealed>]
type PolygonHotSpot =  
    class
        inherit HotSpot
    end

Le type PolygonHotSpot expose les membres suivants.

  NomDescription
Méthode publiquePolygonHotSpotInitialise une nouvelle instance de la classe PolygonHotSpot.
Début
  NomDescription
Propriété publiqueAccessKeyObtient ou définit la touche d'accès rapide qui vous permet de naviguer rapidement vers la région HotSpot. (Hérité de HotSpot.)
Propriété publiqueAlternateTextObtient ou définit le texte de remplacement à afficher pour un objet HotSpot d'un contrôle ImageMap lorsque l'image n'est pas disponible ou s'affiche sur un navigateur qui ne prend pas en charge les images. (Hérité de HotSpot.)
Propriété publiqueCoordinatesChaîne des coordonnées qui représente les sommets d'un objet PolygonHotSpot.
Propriété publiqueHotSpotModeObtient ou définit le comportement d'un objet HotSpot d'un contrôle ImageMap suite à un clic sur HotSpot. (Hérité de HotSpot.)
Propriété protégéeIsTrackingViewStateObtient une valeur indiquant si l'objet HotSpot effectue le suivi des modifications de son état d'affichage. (Hérité de HotSpot.)
Propriété protégéeMarkupNameEn cas de substitution dans une classe dérivée, obtient la représentation sous forme de chaîne de la forme de l'objet HotSpot. (Hérité de HotSpot.)
Propriété publiqueNavigateUrlObtient ou définit l'URL à laquelle accéder lors d'un clic sur un objet HotSpot. (Hérité de HotSpot.)
Propriété publiquePostBackValueObtient ou définit le nom de l'objet HotSpot à passer dans les données d'événement lors d'un clic sur HotSpot. (Hérité de HotSpot.)
Propriété publiqueTabIndexObtient ou définit l'index de tabulation de la région HotSpot. (Hérité de HotSpot.)
Propriété publiqueTargetObtient ou définit la fenêtre ou le frame cible sur lequel afficher le contenu de la page Web vers laquelle un lien est établi lorsqu'un clic est effectué sur un objet HotSpot qui navigue vers une URL. (Hérité de HotSpot.)
Propriété protégéeViewStateObtient un dictionnaire d'informations d'état qui vous permet d'enregistrer et de restaurer l'état d'affichage d'un objet HotSpot entre plusieurs demandes de la même page. (Hérité de HotSpot.)
Début
  NomDescription
Méthode publiqueEquals(Object)Détermine si l'Object spécifié est égal à l'Object en cours. (Hérité de Object.)
Méthode protégéeFinalizeAutorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de netto***ge avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publiqueGetCoordinatesRetourne une chaîne qui représente les coordonnées des sommets d'un objet PolygonHotSpot. (Substitue HotSpot..::.GetCoordinates()()().)
Méthode publiqueGetHashCodeSert de fonction de hachage pour un type particulier. (Hérité de Object.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode protégéeLoadViewStateRestaure sur l'objet l'état d'affichage précédemment enregistré de l'objet HotSpot. (Hérité de HotSpot.)
Méthode protégéeMemberwiseCloneCrée une copie superficielle de l'objet Object actif. (Hérité de Object.)
Méthode protégéeSaveViewStateEnregistre les modifications apportées à l'état d'affichage de l'objet HotSpot depuis la publication de la page sur le serveur. (Hérité de HotSpot.)
Méthode publiqueToStringRetourne la représentation String de cette instance d'un objet HotSpot. (Hérité de HotSpot.)
Méthode protégéeTrackViewStateAmène l'objet HotSpot à suivre les modifications de son état d'affichage afin qu'elles puissent être stockées dans l'objet StateBag de l'objet. Cet objet est accessible via la propriété Control..::.ViewState. (Hérité de HotSpot.)
Début
  NomDescription
Implémentation d'interface explicitePropriété privéeIStateManager..::.IsTrackingViewStateInfrastructure. Obtient une valeur indiquant si l'objet HotSpot effectue le suivi des modifications de son état d'affichage. (Hérité de HotSpot.)
Implémentation d'interface expliciteMéthode privéeIStateManager..::.LoadViewStateInfrastructure. Restaure sur l'objet l'état d'affichage précédemment enregistré de l'objet HotSpot. (Hérité de HotSpot.)
Implémentation d'interface expliciteMéthode privéeIStateManager..::.SaveViewStateInfrastructure. Enregistre les modifications apportées à l'état d'affichage de l'objet HotSpot depuis la dernière publication de la page sur le serveur. (Hérité de HotSpot.)
Implémentation d'interface expliciteMéthode privéeIStateManager..::.TrackViewStateInfrastructure. Indique à la région HotSpot de suivre les modifications apportées à son état d'affichage. (Hérité de HotSpot.)
Début

Cette classe définit une zone réactive en forme de polygone dans un contrôle ImageMap. PolygonHotSpot permet de définir des zones réactives à la forme irrégulière dans un contrôle ImageMap. Par exemple, vous pouvez l'utiliser pour définir des régions individuelles sur une carte géographique.

Pour définir la zone d'un PolygonHotSpot, affectez à la propriété Coordinates une chaîne qui spécifie les coordonnées de chaque sommet de l'objet PolygonHotSpot. Le sommet d'un polygone est un point où se rencontrent deux côtés du polygone.

Lorsqu'un clic est effectué sur un objet PolygonHotSpot, la page navigue vers une URL, génère une publication sur le serveur ou ne fait rien. La propriété HotSpotMode spécifie ce comportement. Pour naviguer vers une URL, affectez HotSpotMode.Navigate à la propriété HotSpotMode et utilisez la propriété NavigateUrl pour spécifier l'URL à atteindre. Pour effectuer une publication sur le serveur, affectez HotSpotMode.PostBack à la propriété HotSpotMode et utilisez la propriété PostBackValue pour spécifier un nom pour l'objet PolygonHotSpot. Ce nom est passé dans les données d'événement ImageMapEventArgs en cas de clic sur PolygonHotSpot. Si vous souhaitez que l'objet PolygonHotSpot n'ait aucun comportement, affectez à la propriété HotSpotMode la valeur HotSpotMode.Inactive.

TopicLocation
Comment : ajouter des contrôles serveur Web ImageMap à une page Web FormsGénération d'applications Web ASP.NET

L'exemple de code suivant montre comment créer un contrôle ImageMap qui contient trois objets PolygonHotSpot. Chaque objet PolygonHotSpot représente une région géographique sur le plan. Lorsque l'utilisateur clique sur un objet PolygonHotSpot, il le publie sur le serveur et le type et nom de la zone réactive s'affichent dans une étiquette.

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

  Sub RegionMap_Clicked(ByVal sender As Object, ByVal e As ImageMapEventArgs)
    Dim hotSpotType As String

    ' When a user clicks a hot spot, display
    ' the hot spot's type and name.
    Select Case (e.PostBackValue)

      Case ("Western")
        hotSpotType = Regions.HotSpots(0).ToString()
        Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue

      Case ("Northern")
        hotSpotType = Regions.HotSpots(1).ToString()
        Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue

      Case ("Southern")
        hotSpotType = Regions.HotSpots(2).ToString()
        Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue

      Case Else
        Message1.Text = "You did not click a valid hot spot region."

    End Select

  End Sub

</script>

<html  >
<head id="Head1" runat="server">
  <title>PolygonHotSpot Class Example</title>
</head>
  <body>
    <form id="Form1" runat="server">

      <h3>PolygonHotSpot Example</h3>

      <!-- Change or remove the width and height attributes as
           appropriate for your image. -->
      <asp:imagemap id="Regions"           
        imageurl="Images/RegionMap.jpg"
        alternatetext="Sales regions" 
        hotspotmode="PostBack"
        width="400"
        height="400"
        onclick="RegionMap_Clicked"   
        runat="Server">            

        <asp:PolygonHotSpot 
          coordinates="0,0,176,0,125,182,227,400,0,400"         
          postbackvalue="Western"
          alternatetext="Western Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="177,0,400,0,400,223,335,154,127,180"         
          postbackvalue="Northern"
          alternatetext="Northern Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="128,185,335,157,400,224,400,400,228,400"         
          postbackvalue="Southern"
          alternatetext="Southern Region">
        </asp:PolygonHotSpot>

      </asp:imagemap>

      <br /><br />

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

    </form>      
  </body>
</html>
C#
<%@ 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 RegionMap_Clicked (object sender, ImageMapEventArgs e)
  {
    string hotSpotType;

    // When a user clicks a hot spot, display
    // the hot spot's type and name.
    switch (e.PostBackValue)
    {
      case "Western":
        hotSpotType = Regions.HotSpots[0].ToString();
        Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
        break;

      case "Northern":
        hotSpotType = Regions.HotSpots[1].ToString();
        Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
        break;

      case "Southern":
        hotSpotType = Regions.HotSpots[2].ToString();
        Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
        break;

      default:
        Message1.Text = "You did not click a valid hot spot region.";
        break;
    }
  }  

</script>

<html  >
<head id="Head1" runat="server">
  <title>PolygonHotSpot Class Example</title>
</head>
  <body>
    <form id="Form1" runat="server">

      <h3>PolygonHotSpot Example</h3>

      <!-- Change or remove the width and height attributes as
           appropriate for your image. -->
      <asp:imagemap id="Regions"           
        imageurl="Images/RegionMap.jpg"
        alternatetext="Sales regions" 
        hotspotmode="PostBack"
        width="400"
        height="400"
        onclick="RegionMap_Clicked"   
        runat="Server">            

        <asp:PolygonHotSpot 
          coordinates="0,0,176,0,125,182,227,400,0,400"         
          postbackvalue="Western"
          alternatetext="Western Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="177,0,400,0,400,223,335,154,127,180"         
          postbackvalue="Northern"
          alternatetext="Northern Region">
        </asp:PolygonHotSpot>

        <asp:PolygonHotSpot 
          coordinates="128,185,335,157,400,224,400,400,228,400"         
          postbackvalue="Southern"
          alternatetext="Southern Region">
        </asp:PolygonHotSpot>

      </asp:imagemap>

      <br /><br />

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

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

.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Contenu de la communauté   Qu'est-ce que le Contenu de la communauté ?
Ajouter du contenu RSS  Annotations
Processing
© 2012 Microsoft. Tous droits réservés. Conditions d'utilisation | Marques | Confidentialité
Page view tracker