Partilhar via


ImageMap.HotSpotMode Propriedade

Definição

Obtém ou define o comportamento padrão para os objetos HotSpot de um controle ImageMap quando os objetos HotSpot são clicados.

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

Valor da propriedade

Um dos valores de enumeração HotSpotMode. O padrão é NotSet.

Exceções

O tipo especificado não é um dos valores de enumeração de HotSpotMode.

Exemplos

O exemplo de código a seguir demonstra como criar declarativamente um ImageMap controle que contém dois RectangleHotSpot objetos. A ImageMap.HotSpotMode propriedade é definida HotSpotMode.PostBackcomo , o que faz com que a página poste de volta no servidor sempre que um usuário clica em uma das regiões de ponto quente. A HotSpotMode propriedade não é definida em cada um dos RectangleHotSpot objetos porque eles obtêm seu comportamento da ImageMap.HotSpotMode propriedade . Para que este exemplo funcione corretamente, você deve fornecer sua própria imagem para a ImageUrl propriedade e atualizar o caminho para a imagem adequadamente para que o aplicativo possa localizá-la.

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

Comentários

Use a HotSpotMode propriedade para especificar o comportamento de clique padrão dos HotSpot objetos dentro de um ImageMap controle. Essa propriedade é definida usando um dos HotSpotMode valores de enumeração. A tabela a seguir lista os valores possíveis.

Item Descrição
Inactive O HotSpot objeto não tem nenhum comportamento.
NotSet O HotSpot objeto usa o comportamento definido pela ImageMap propriedade do HotSpotMode controle. Se o ImageMap controle não definir o comportamento, todos os HotSpot objetos navegarão até uma URL.
Navigate Os HotSpot objetos navegam até uma URL.
PostBack Os HotSpot objetos geram um postback para o servidor.

Você pode especificar o comportamento de um HotSpot objeto usando a ImageMap.HotSpotMode propriedade do ImageMap controle ou a HotSpot.HotSpotMode propriedade de cada objeto individual HotSpot . Se ambas as propriedades forem definidas, a HotSpot.HotSpotMode propriedade especificada em cada objeto individual HotSpot terá precedência sobre a ImageMap.HotSpotMode propriedade no ImageMap controle .

Quando você definir a HotSpotMode propriedade do ImageMap controle, observe que os HotSpotMode.NotSet valores e HotSpotMode.Navigate têm o mesmo comportamento: ambos navegam até uma URL. Quando você especifica HotSpotMode.NotSet para a HotSpot.HotSpotMode propriedade de um objeto individual HotSpot , isso HotSpot determina seu comportamento do valor da HotSpotMode propriedade do ImageMap controle.

Se você especificar HotSpotMode.Navigate para a ImageMap.HotSpotMode propriedade , a página navegará para uma URL quando o HotSpot for clicado. Use a NavigateUrl propriedade para especificar a URL para a qual navegar.

Se você especificar HotSpotMode.PostBack para a ImageMap.HotSpotMode propriedade , a página gerará um postback para o servidor quando o HotSpot for clicado. Use a PostBackValue propriedade para especificar o nome da região do ponto de acesso. Esse nome será passado nos dados do ImageMapEventArgs evento quando ocorrer um evento de postback. Quando um postback HotSpot é clicado, o Click evento é gerado. Para controlar programaticamente as ações executadas quando um postback HotSpot é clicado, forneça um manipulador de eventos para o Click evento.

Se você especificar HotSpotMode.Inactive para a HotSpot.HotSpotMode propriedade , o HotSpot objeto não terá nenhum comportamento quando ele for clicado. Você pode usar esse valor para criar um ponto de acesso inativo dentro de um ponto de acesso ativo maior. Essa opção é fornecida para permitir que você crie zonas de ponto de acesso mais complexas dentro de um ImageMap controle.

Para criar uma área inativa dentro de um ponto de acesso ativo, você deve especificar o ponto de acesso inativo antes do ponto de acesso ativo no ImageMap controle. Por exemplo, o seguinte ImageMap define um anel ativo especificando um ponto de acesso circular inativo dentro de um ponto de acesso circular ativo maior:

<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>  

Para fazer com que todos os HotSpot objetos em um ImageMap controle tenham o mesmo comportamento, use a HotSpotMode propriedade no ImageMap controle para especificar o comportamento. Em seguida, defina a HotSpotMode propriedade em cada objeto individual HotSpot como HotSpotMode.NotSet ou não especifique um valor para a HotSpot.HotSpotMode propriedade .

Para especificar comportamentos diferentes para HotSpot objetos em um ImageMap controle, defina a HotSpot.HotSpotMode propriedade em cada objeto individual HotSpot como HotSpotMode.Navigate, HotSpotMode.PostBackou HotSpotMode.Inactive.

Observação

Se a propriedade de um ImageMap controle ou a HotSpot.HotSpotMode propriedade em qualquer um dos HotSpot objetos que ele contém estiver definida HotSpotMode.NotSet como ou não definida como um valor, por padrão, o comportamento será HotSpotMode.NavigateImageMap.HotSpotMode .

Aplica-se a

Confira também