次の方法で共有


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オブジェクトの プロパティImageMapImageMap.HotSpotMode使用して、オブジェクトの動作をHotSpot.HotSpotMode指定HotSpotできます。 両方のプロパティが設定されている場合は、HotSpot.HotSpotModeHotSpotオブジェクトで指定されたプロパティがコントロールの ImageMap プロパティよりもImageMap.HotSpotMode優先されます。

コントロールの プロパティを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設定します。

注意

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

適用対象

こちらもご覧ください