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 列挙値ではありません。

次のコード例では、2 つのRectangleHotSpotオブジェクトを含むコントロールをImageMap宣言的に作成する方法を示します。 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 オブジェクトの既定のクリック動作を指定するには、 HotSpot プロパティを ImageMap 使用します。 このプロパティは、列挙値のいずれかを使用して設定されます HotSpotMode 。 次の表に、使用可能な値を示します。

Item 説明
Inactive オブジェクトには HotSpot 動作がありません。
NotSet オブジェクトはHotSpot、コントロールHotSpotModeの プロパティによって設定された動作をImageMap使用します。 コントロールで動作が ImageMap 定義されていない場合、 HotSpot オブジェクトはすべて URL に移動します。
Navigate オブジェクトは HotSpot URL に移動します。
PostBack オブジェクトは HotSpot 、サーバーへのポストバックを生成します。

コントロールの プロパティまたは個々HotSpotのオブジェクトの ImageMap プロパティをImageMap.HotSpotMode使用して、オブジェクトの動作をHotSpot.HotSpotMode指定HotSpotできます。 両方のプロパティが設定されている場合は、 HotSpot.HotSpotMode 各オブジェクト HotSpot で指定されたプロパティがコントロールの ImageMap.HotSpotModeImageMap プロパティよりも優先されます。

コントロールの プロパティをHotSpotMode設定するときは、 と HotSpotMode.NavigateImageMap値が同じ動作であることにHotSpotMode.NotSet注意してください。両方とも URL に移動します。 個々HotSpotのオブジェクトの プロパティに HotSpot.HotSpotMode を指定HotSpotMode.NotSetすると、HotSpotコントロールの プロパティの値から動作がHotSpotModeImageMap決定されます。

プロパティに ImageMap.HotSpotMode を指定HotSpotMode.Navigateすると、 がクリックされたときにHotSpotページが URL に移動します。 プロパティを NavigateUrl 使用して、移動先の URL を指定します。

プロパティに ImageMap.HotSpotMode を指定HotSpotMode.PostBackすると、 がクリックされると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>  

コントロール内のすべてのHotSpotオブジェクトの動作をImageMap同じにするには、コントロールの プロパティをHotSpotModeImageMap使用して動作を指定します。 次に、各HotSpotオブジェクトの プロパティを HotSpotModeHotSpotMode.NotSet設定するか、プロパティの値をHotSpot.HotSpotMode指定しません。

コントロール内のオブジェクトに対してHotSpot異なる動作をImageMap指定するには、個々HotSpotのオブジェクトの プロパティを HotSpot.HotSpotModeHotSpotMode.PostBack、または HotSpotMode.InactiveのいずれかにHotSpotMode.Navigate設定します。

Note

ImageMapコントロールの ImageMap.HotSpotMode プロパティまたはHotSpot.HotSpotModeコントロールに含まれるオブジェクトの HotSpot プロパティが に設定されているか、値にHotSpotMode.NotSet設定されていない場合、既定では動作は になりますHotSpotMode.Navigate

適用対象

こちらもご覧ください