HotSpotMode 列挙体
アセンブリ: System.Web (system.web.dll 内)

Public Enumeration HotSpotMode

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

HotSpotMode 列挙体は、ImageMap コントロール内の HotSpot オブジェクトに適用できる動作を表します。ImageMap.HotSpotMode プロパティおよび HotSpot.HotSpotMode プロパティでは、これらの列挙体を使用して、HotSpot オブジェクトがクリックされたときの動作を設定します。両方のプロパティが設定された場合、コントロールの ImageMap.HotSpotMode プロパティよりも、各 HotSpot オブジェクトに指定された HotSpot.HotSpotMode プロパティが優先されます。
個々の HotSpot オブジェクトの HotSpot.HotSpotMode プロパティに HotSpotMode.NotSet を指定した場合、HotSpot は、格納している ImageMap コントロールの ImageMap.HotSpotMode プロパティからその動作を取得します。この状況では、ImageMap コントロールの HotSpotMode プロパティが NotSet であるか、または値が指定されていない場合、既定の動作は URL への移動です。
![]() |
---|
ImageMap コントロールの動作が、ImageMap.HotSpotMode プロパティまたは格納している HotSpot オブジェクトの HotSpot.HotSpotMode プロパティを使用して指定されていない場合、動作は既定で HotSpotMode.Navigate になります。また、ImageMap コントロールが格納している HotSpot オブジェクトの HotSpot.HotSpotMode プロパティが HotSpotMode.NotSet に設定されており、ImageMap.HotSpotMode プロパティに値が設定されていない場合、既定の動作は HotSpotMode.Navigate になります。 |
ImageMap.HotSpotMode プロパティか HotSpot.HotSpotMode プロパティに HotSpotMode.Navigate を指定した場合、HotSpot がクリックされるとページは URL に移動します。Image.NavigateUrl プロパティまたは HotSpot.NavigateUrl プロパティを使用して、移動先の URL を指定します。
ImageMap.HotSpotMode プロパティまたは HotSpot.HotSpotMode プロパティに HotSpotMode.PostBack を指定した場合、HotSpot がクリックされるとページはサーバーへのポストバックを生成します。PostBackValue プロパティを使用して、HotSpot オブジェクトの名前を指定します。この名前は、ポストバック イベントの発生時に 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>

HotSpotMode 列挙値を使用して ImageMap.HotSpotMode プロパティを設定する方法を次のコード例に示します。ページには、2 つの RectangleHotSpot オブジェクトを格納した ImageMap コントロールが含まれます。ImageMap.HotSpotMode プロパティは HotSpotMode.PostBack に設定されます。この場合、ユーザーがいずれかのホット スポット領域をクリックするたびに、ページがサーバーにポストバックされます。RectangleHotSpot オブジェクトは ImageMap.HotSpotMode プロパティから動作を取得するため、いずれのオブジェクトにも HotSpotMode プロパティを設定しません。この例を正常に動作させるには、ImageUrl プロパティにユーザー独自のイメージを提供し、アプリケーションがそのイメージを見つけられるように、イメージへのパスを適切に更新する必要があります。
<%@ page language="VB" %> <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> <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="Vote 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="C#" %> <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> <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="Vote 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>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- HotSpotMode 列挙体のページへのリンク