ImageMap.HotSpotMode Proprietà

Definizione

Ottiene o imposta il comportamento predefinito degli oggetti HotSpot di un controllo ImageMap quando viene fatto clic sugli oggetti HotSpot.

public:
 virtual property System::Web::UI::WebControls::HotSpotMode HotSpotMode { System::Web::UI::WebControls::HotSpotMode get(); void set(System::Web::UI::WebControls::HotSpotMode value); };
public virtual System.Web.UI.WebControls.HotSpotMode HotSpotMode { get; set; }
member this.HotSpotMode : System.Web.UI.WebControls.HotSpotMode with get, set
Public Overridable Property HotSpotMode As HotSpotMode

Valore della proprietà

Uno dei valori dell'enumerazione HotSpotMode. Il valore predefinito è NotSet.

Eccezioni

Il tipo specificato non è uno dei valori dell'enumerazione HotSpotMode.

Esempio

Nell'esempio di codice seguente viene illustrato come creare in modo dichiarativo un ImageMap controllo contenente due RectangleHotSpot oggetti . La ImageMap.HotSpotMode proprietà è impostata su HotSpotMode.PostBack, che determina la postback della pagina al server ogni volta che un utente fa clic su una delle aree ad accesso frequente. La HotSpotMode proprietà non è impostata su ognuno degli RectangleHotSpot oggetti perché ottengono il comportamento dalla ImageMap.HotSpotMode proprietà . Per il corretto funzionamento di questo esempio, è necessario specificare la propria immagine per la ImageUrl proprietà e aggiornare il percorso dell'immagine in modo appropriato in modo che l'applicazione possa individuarla.

<%@ 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)
  {       
    // When a user clicks the "Yes" hot spot,
    // display the hot spot's value.
    if (e.PostBackValue == "Yes")
      Message1.Text = "You selected " + e.PostBackValue + ".";
       
    else if (e.PostBackValue == "No") 
      // When a user clicks the "No" hot spot,
      // display the hot spot's value.       
      Message1.Text = "You selected " + e.PostBackValue + ".";
      
    else
      Message1.Text = "You did not click a valid hot spot region.";             
  }
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
  <title>ImageMap.HotSpotMode Example</title>
</head>
  <body>
    <form id="form1" runat="server">
    
      <h3>ImageMap.HotSpotMode Example</h3>
      
      <!--The RectangleHotSpot objects have the post back
        behavior specified by the HotSpotMode 
        property on the ImageMap control.-->
      <asp:imagemap id="Vote"           
        imageurl="Images/VoteImage.jpg"
        alternatetext="Voting choices" 
        hotspotmode="PostBack"
        onclick="VoteMap_Clicked"   
        runat="Server">   
        
        <asp:RectangleHotSpot          
          top="0"
          left="0"
          bottom="354"
          right="250"
          postbackvalue="Yes"
          alternatetext="Vote yes">
        </asp:RectangleHotSpot>
        
        <asp:RectangleHotSpot 
          top="0"
          left="251"
          bottom="354"
          right="500"
          postbackvalue="No"
          alternatetext="Vote no">
        </asp:RectangleHotSpot>
        
      </asp:imagemap>
      
      <br />
      
      <asp:label id="Message1"
        runat="Server">
      </asp:label>
              
    </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">
    
  Sub VoteMap_Clicked(ByVal sender As Object, ByVal e As ImageMapEventArgs)
            
    ' When a user clicks the "Yes" hot spot,
    ' display the hot spot's value.
    If (e.PostBackValue = "Yes") Then
      Message1.Text = "You selected " & e.PostBackValue & "."
       
      ' When a user clicks the "No" hot spot,
      ' display the hot spot's value.
    ElseIf (e.PostBackValue = "No") Then
      Message1.Text = "You selected " & e.PostBackValue & "."
      
    Else
      Message1.Text = "You did not click a valid hot spot region."
                
    End If
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
  <title>ImageMap.HotSpotMode Example</title>
</head>
  <body>
    <form id="form1" runat="server">
    
      <h3>ImageMap.HotSpotMode Example</h3>
      
      <!--The RectangleHotSpot objects have the post back
        behavior specified by the HotSpotMode 
        property on the ImageMap control.-->
      <asp:imagemap id="Vote"           
        imageurl="Images/VoteImage.jpg"
        alternatetext="Voting choices" 
        hotspotmode="PostBack"
        onclick="VoteMap_Clicked"   
        runat="Server">   
        
        <asp:RectangleHotSpot          
          top="0"
          left="0"
          bottom="354"
          right="250"
          postbackvalue="Yes"
          alternatetext="Vote yes">
        </asp:RectangleHotSpot>
        
        <asp:RectangleHotSpot 
          top="0"
          left="251"
          bottom="354"
          right="500"
          postbackvalue="No"
          alternatetext="Vote no">
        </asp:RectangleHotSpot>
        
      </asp:imagemap>
      
      <br />
      
      <asp:label id="Message1"
        runat="Server">
      </asp:label>
              
    </form>      
  </body>
</html>

Commenti

Utilizzare la HotSpotMode proprietà per specificare il comportamento di clic predefinito degli HotSpot oggetti all'interno di un ImageMap controllo . Questa proprietà viene impostata utilizzando uno dei valori di HotSpotMode enumerazione . Nella tabella seguente sono elencati i valori possibili.

Elemento Descrizione
Inactive L'oggetto HotSpot non ha alcun comportamento.
NotSet L'oggetto HotSpot utilizza il comportamento impostato dalla ImageMap proprietà del HotSpotMode controllo. Se il ImageMap controllo non definisce il comportamento, tutti gli HotSpot oggetti passano a un URL.
Navigate Gli HotSpot oggetti passano a un URL.
PostBack Gli HotSpot oggetti generano un postback al server.

È possibile specificare il comportamento di un HotSpot oggetto utilizzando la ImageMap.HotSpotMode proprietà del ImageMap controllo o la HotSpot.HotSpotMode proprietà di ogni singolo HotSpot oggetto. Se vengono impostate entrambe le proprietà, la HotSpot.HotSpotMode proprietà specificata in ogni singolo HotSpot oggetto ha la ImageMap.HotSpotMode precedenza sulla proprietà nel ImageMap controllo .

Quando si imposta la HotSpotMode proprietà del ImageMap controllo, si noti che i HotSpotMode.NotSet valori e HotSpotMode.Navigate hanno lo stesso comportamento: entrambi passano a un URL. Quando si specifica HotSpotMode.NotSet per la HotSpot.HotSpotMode proprietà di un singolo HotSpot oggetto, che HotSpot ne determina il comportamento dal valore della HotSpotMode proprietà del ImageMap controllo.

Se si specifica HotSpotMode.Navigate per la ImageMap.HotSpotMode proprietà , la pagina passa a un URL quando HotSpot si fa clic su . Utilizzare la NavigateUrl proprietà per specificare l'URL a cui passare.

Se si specifica HotSpotMode.PostBack per la ImageMap.HotSpotMode proprietà , la pagina genera un postback al server quando HotSpot si fa clic su . Usare la PostBackValue proprietà per specificare il nome dell'area dell'area ad accesso frequente. Questo nome verrà passato nei dati dell'evento ImageMapEventArgs quando si verifica un evento di postback. Quando si fa clic su un postback HotSpot , viene generato l'evento Click . Per controllare a livello di codice le azioni eseguite quando si fa clic su un postback HotSpot , specificare un gestore eventi per l'evento Click .

Se si specifica HotSpotMode.Inactive per la HotSpot.HotSpotMode proprietà , l'oggetto HotSpot non ha alcun comportamento quando viene fatto clic su di esso. È possibile usare questo valore per creare un'area ad accesso frequente inattiva all'interno di un'area ad accesso frequente più grande. Questa opzione è disponibile per consentire di creare zone di accesso frequente più complesse all'interno di un ImageMap controllo.

Per creare un'area inattiva all'interno di un'area ad accesso frequente attivo, è necessario specificare il punto di accesso inattivo prima del punto attivo nel ImageMap controllo. Ad esempio, il codice seguente ImageMap definisce un anello attivo specificando un punto critico circolare inattivo all'interno di un'area ad accesso frequente circolare più grande:

<asp:ImageMap ID="SaturnImage"   
       ImageUrl="~/saturn.PNG"   
       runat="server" OnClick="SaturnImage_Click">  
    <asp:CircleHotSpot AlternateText="planet" HotSpotMode=PostBack  
          PostBackValue="planet" Radius=40 X=100 Y=100 />  

    <asp:CircleHotSpot HotSpotMode=Inactive   
          Radius=60 X=100 Y=100 />  
    <asp:CircleHotSpot AlternateText="rings" HotSpotMode=PostBack  
          PostBackValue="rings" Radius=80 X=100 Y=100 />  
</asp:ImageMap>  

Per fare in modo che tutti gli HotSpot oggetti di un ImageMap controllo abbiano lo stesso comportamento, utilizzare la HotSpotMode proprietà nel ImageMap controllo per specificare il comportamento. Impostare quindi la HotSpotMode proprietà su ogni singolo HotSpot oggetto su HotSpotMode.NotSet o non specificare un valore per la HotSpot.HotSpotMode proprietà .

Per specificare comportamenti diversi per HotSpot gli oggetti in un ImageMap controllo, impostare la HotSpot.HotSpotMode proprietà su ogni singolo HotSpot oggetto HotSpotMode.Navigatesu , HotSpotMode.PostBacko HotSpotMode.Inactive.

Nota

Se la proprietà di un ImageMap controllo o la HotSpot.HotSpotMode proprietà di uno qualsiasi degli HotSpot oggetti che contiene è impostata su HotSpotMode.NotSet o non è impostata su un valore, per impostazione predefinita il comportamento è HotSpotMode.NavigateImageMap.HotSpotMode .

Si applica a

Vedi anche