ImageMap.HotSpotMode 屬性

定義

取得或設定按一下 HotSpot 物件時,ImageMap 控制項之 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

屬性值

其中一個 HotSpotMode 列舉值。 預設為 NotSet

例外狀況

指定的型別不是其中一個 HotSpotMode 列舉值。

範例

下列程式碼範例示範如何以宣告方式建立包含兩 RectangleHotSpotImageMap 物件的控制項。 屬性 ImageMap.HotSpotMode 設定為 HotSpotMode.PostBack ,這會導致每次使用者按一下其中一個作用點區域時,頁面回傳至伺服器。 HotSpotMode屬性不會在每個物件上設定, RectangleHotSpot 因為它們會從 ImageMap.HotSpotMode 屬性取得其行為。 若要讓這個範例正確運作,您必須提供 ImageUrl 屬性自己的映射,並適當地更新映射的路徑,讓應用程式可以找到它。

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

備註

HotSpotMode使用 屬性可指定 控制項內 ImageMap 物件的預設按一下行為 HotSpot 。 此屬性是使用其中 HotSpotMode 一個列舉值來設定。 下表列出可能的值。

項目 描述
Inactive 物件 HotSpot 沒有任何行為。
NotSet 物件 HotSpot 會使用 控制項的 HotSpotMode 屬性所設定 ImageMap 的行為。 ImageMap如果控制項未定義行為,則 HotSpot 物件全都會流覽至 URL。
Navigate 物件 HotSpot 會流覽至 URL。
PostBack 物件 HotSpot 會產生回傳至伺服器。

您可以使用 控制項的 屬性或 HotSpot.HotSpotMode 每個個別 HotSpot 物件的 屬性來指定 HotSpot 物件的行為 ImageMap.HotSpotModeImageMap 如果同時設定這兩個屬性, HotSpot.HotSpotMode 則每個個別 HotSpot 物件上指定的屬性會優先于 ImageMap.HotSpotMode 控制項上的 ImageMap 屬性。

當您設定 HotSpotMode 控制項的 ImageMap 屬性時,請注意 HotSpotMode.NotSetHotSpotMode.Navigate 值的行為相同:兩者都會流覽至 URL。 當您 HotSpotMode.NotSet 指定 HotSpot.HotSpotMode 個別 HotSpot 物件的 屬性時,會 HotSpotHotSpotMode 控制項的 屬性值 ImageMap 判斷其行為。

如果您為 ImageMap.HotSpotMode 屬性指定 HotSpotMode.Navigate ,則按一下 時 HotSpot ,頁面會巡覽至 URL。 NavigateUrl使用 屬性指定要巡覽至的 URL。

如果您指定 HotSpotMode.PostBackImageMap.HotSpotMode 屬性,頁面會在按一下 時 HotSpot 產生回傳至伺服器。 PostBackValue使用 屬性來指定作用點區域的名稱。 發生回傳事件時, ImageMapEventArgs 此名稱會在事件資料中傳遞。 按一下回 HotSpot 傳時, Click 就會引發 事件。 若要以程式設計方式控制按一下回 HotSpot 傳時所執行的動作,請提供事件的事件處理常式 Click

如果您為 HotSpot.HotSpotMode 屬性指定 HotSpotMode.Inactive ,則 HotSpot 按一下物件時沒有任何行為。 您可以使用此值,在較大的作用中作用中作用點內建立非作用中作用中的作用點。 此選項可讓您在控制項內 ImageMap 建立更複雜的作用點區域。

若要在作用中點內建立非作用中區域,您必須在控制項的作用中作用點之前指定非作用中作用中的 ImageMap 作用點。 例如,下列 ImageMap 命令會藉由在較大的作用中迴圈作用點內指定非作用中迴圈作用點來定義作用中環形:

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

若要讓控制項中的所有 HotSpotImageMap 物件具有相同的行為,請使用 HotSpotMode 控制項上的 ImageMap 屬性來指定行為。 然後,將每個個別 HotSpot 物件上的 屬性設定 HotSpotModeHotSpotMode.NotSet 或 未指定 屬性的值 HotSpot.HotSpotMode

若要為 HotSpot 控制項中的 ImageMap 物件指定不同的行為,請將 HotSpot.HotSpotMode 每個個別 HotSpot 物件的 屬性設定為 HotSpotMode.NavigateHotSpotMode.PostBackHotSpotMode.Inactive

注意

ImageMap如果控制項 ImageMap.HotSpotMode 的 屬性或 HotSpot.HotSpotMode 它包含之任何 HotSpot 物件的 屬性設定為 或未設定 HotSpotMode.NotSet 為值,則行為預設為 HotSpotMode.Navigate

適用於

另請參閱