RectangleHotSpot クラス

定義

ImageMap コントロールに四角形のホット スポット領域を定義します。 このクラスは継承できません。

public ref class RectangleHotSpot sealed : System::Web::UI::WebControls::HotSpot
public sealed class RectangleHotSpot : System.Web.UI.WebControls.HotSpot
type RectangleHotSpot = class
    inherit HotSpot
Public NotInheritable Class RectangleHotSpot
Inherits HotSpot
継承
RectangleHotSpot

次のコード例では、2 つのRectangleHotSpotオブジェクトを含むコントロールをImageMap宣言的に作成する方法を示します。 ImageMap.HotSpotModeプロパティは にHotSpotMode.PostBack設定されています。これにより、ユーザーがいずれかのホット スポット領域をクリックするたびに、ページがサーバーにポストバックされます。 ユーザーがオブジェクトの 1 つを RectangleHotSpot クリックするたびに、 メソッドが呼び出され、 GetCoordinates 選択したホット スポットの座標がユーザーに表示されます。 この例を正しく機能させるには、 プロパティに独自のイメージを 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)
  {
    string coordinates;
    string hotSpotType;
    int yescount = ((ViewState["yescount"] != null)? (int)ViewState["yescount"] : 0);
    int nocount = ((ViewState["nocount"] != null)? (int)ViewState["nocount"] : 0);

    // When a user clicks the "Yes" hot spot,
    // display the hot spot's name and coordinates.
    if (e.PostBackValue.Contains("Yes"))
    {
      yescount += 1;
      coordinates = Vote.HotSpots[0].GetCoordinates();
      hotSpotType = Vote.HotSpots[0].ToString ();
      Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue + ".<br />" +
                      "The coordinates are " + coordinates + ".<br />" +
                      "The current vote count is " + yescount.ToString() + 
            " yes votes and " + nocount.ToString() + " no votes.";
    }
      
    // When a user clicks the "No" hot spot,
    // display the hot spot's name and coordinates.
    else if (e.PostBackValue.Contains("No"))
    {
      nocount += 1;
      coordinates = Vote.HotSpots[1].GetCoordinates();
      hotSpotType = Vote.HotSpots[1].ToString ();
      Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue + ".<br />" +
                      "The coordinates are " + coordinates + ".<br />" +
            "The current vote count is " + yescount.ToString() +
            " yes votes and " + nocount.ToString() + " no votes.";
    }
    
    else
    {
      Message1.Text = "You did not click a valid hot spot region.";
    }

    ViewState["yescount"] = yescount;
    ViewState["nocount"] = nocount;
  }           
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
  <title>ImageMap Class Post Back Example</title>
</head>
  <body>
    <form id="form1" runat="server">
    
      <h3>ImageMap Class Post Back Example</h3>
      
      <asp:imagemap id="Vote"           
        imageurl="Images/VoteImage.jpg"
        width="400" 
        height="200" 
        alternatetext="Vote Yes or No"
        hotspotmode="PostBack"
        onclick="VoteMap_Clicked"
        runat="Server">            
          
        <asp:RectangleHotSpot          
          top="0"
          left="0"
          bottom="200"
          right="200"
          postbackvalue="Yes"
          alternatetext="Vote yes">
        </asp:RectangleHotSpot>
          
        <asp:RectangleHotSpot 
          top="0"
          left="201"
          bottom="200"
          right="400"
          postbackvalue="No"
          alternatetext="Vote no">
        </asp:RectangleHotSpot>
      
      </asp:imagemap>
            
      <br /><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)
    Dim coordinates As String
    Dim hotSpotType As String
    Dim yescount As Integer
    Dim nocount As Integer
    
    If (ViewState("yescount") IsNot Nothing) Then
      yescount = Convert.ToInt32(ViewState("yescount"))
    Else
      yescount = 0
    End If
    If (ViewState("nocount") IsNot Nothing) Then
      nocount = Convert.ToInt32(ViewState("nocount"))
    Else
      nocount = 0
    End If
      
    
    ' When a user clicks the "Yes" hot spot,
    ' display the hot spot's name and coordinates.
    If (e.PostBackValue.Contains("Yes")) Then
      
      yescount += 1
      coordinates = Vote.HotSpots(0).GetCoordinates()
      hotSpotType = Vote.HotSpots(0).ToString()
      Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue & ".<br />" & _
                      "The coordinates are " & coordinates & ".<br />" & _
                      "The current vote count is " & yescount.ToString() & _
                      " yes votes and " & nocount.ToString() & " no votes."
       
      ' When a user clicks the "No" hot spot,
      ' display the hot spot's name and coordinates.
    ElseIf (e.PostBackValue.Contains("No")) Then
      
      nocount += 1
      coordinates = Vote.HotSpots.Item(1).GetCoordinates()
      hotSpotType = Vote.HotSpots.Item(1).ToString()
      Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue & ".<br />" & _
                     "The coordinates are " & coordinates & ".<br />" & _
                      "The current vote count is " & yescount.ToString() & _
                      " yes votes and " & nocount.ToString() & " no votes."
      
    Else
      
      Message1.Text = "You did not click a valid hot spot region."
                
    End If
      
    ViewState("yescount") = yescount
    ViewState("nocount") = nocount
    
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
  <title>ImageMap Class Post Back Example</title>
</head>
  <body>
    <form id="form1" runat="server">
    
      <h3>ImageMap Class Post Back Example</h3>
      
      <asp:imagemap id="Vote"           
        imageurl="Images/VoteImage.jpg"
        width="400" 
        height="200" 
        alternatetext="Vote Yes or No"
        hotspotmode="PostBack"
        onclick="VoteMap_Clicked"
        runat="Server">            
          
        <asp:RectangleHotSpot          
          top="0"
          left="0"
          bottom="200"
          right="200"
          postbackvalue="Yes"
          alternatetext="Vote yes">
        </asp:RectangleHotSpot>
          
        <asp:RectangleHotSpot 
          top="0"
          left="201"
          bottom="200"
          right="400"
          postbackvalue="No"
          alternatetext="Vote no">
        </asp:RectangleHotSpot>
      
      </asp:imagemap>
            
      <br /><br />
          
      <asp:label id="Message1"
        runat="Server">
      </asp:label>                 
                 
    </form>      
  </body>
</html>

注釈

このクラスは、コントロール内の四角形のホット スポット領域を ImageMap 定義します。 オブジェクトの領域を RectangleHotSpot 定義するには、 プロパティを Left 、四角形領域の左上隅の x 座標を表す値に設定します。 プロパティを Top 、四角形領域の左上隅の y 座標を表す値に設定します。 プロパティを Right 、四角形領域の右下隅の x 座標を表す値に設定します。 プロパティの Bottom セットは、四角形領域の右下隅の y 座標を表す値です。

コントロールが RectangleHotSpot クリックされると、ページは URL に移動し、サーバーへのポストを生成するか、何も実行しません。 プロパティは HotSpotMode 、この動作を指定します。 URL に移動するには、 プロパティを HotSpotModeHotSpotMode.Navigate 設定し、 プロパティを NavigateUrl 使用して移動先の URL を指定します。 サーバーにポストバックするには、 プロパティを HotSpotModeHotSpotMode.PostBack 設定し、 プロパティを PostBackValue 使用してオブジェクトの名前を RectangleHotSpot 指定します。 この名前は、 がクリックされたときにRectangleHotSpotイベント データにImageMapEventArgs渡されます。 . オブジェクトに HotSpot 動作を設定しない場合は、 プロパティを HotSpotModeHotSpotMode.Inactive設定します。

コンストラクター

RectangleHotSpot()

RectangleHotSpot クラスの新しいインスタンスを初期化します。

プロパティ

AccessKey

HotSpot 領域にすばやく移動できるアクセス キーを取得または設定します。

(継承元 HotSpot)
AlternateText

イメージを使用できない場合や、イメージをサポートしないブラウザーにイメージが表示される場合に、HotSpot コントロールの ImageMap オブジェクトに表示する代替テキストを取得または設定します。

(継承元 HotSpot)
Bottom

RectangleHotSpot オブジェクトで定義される四角形領域の下辺の y 座標を取得または設定します。

HotSpotMode

HotSpot がクリックされたときの、ImageMap コントロールの HotSpot オブジェクトの動作を取得または設定します。

(継承元 HotSpot)
IsTrackingViewState

HotSpot オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。

(継承元 HotSpot)
Left

RectangleHotSpot オブジェクトで定義される四角形領域の左辺の x 座標を取得または設定します。

MarkupName

派生クラスでオーバーライドされると、HotSpot オブジェクトの形状の文字列形式を取得します。

(継承元 HotSpot)
NavigateUrl

HotSpot オブジェクトがクリックされたときの移動先 URL を取得または設定します。

(継承元 HotSpot)
PostBackValue

HotSpot がクリックされたときにイベント データに渡される HotSpot オブジェクトの名前を取得または設定します。

(継承元 HotSpot)
Right

RectangleHotSpot オブジェクトで定義される四角形領域の右辺の x 座標を取得または設定します。

TabIndex

HotSpot 領域のタブ インデックスを取得または設定します。

(継承元 HotSpot)
Target

URL に移動する HotSpot オブジェクトがクリックされたときに、リンク先 Web ページの内容を表示するウィンドウまたはフレームを取得または設定します。

(継承元 HotSpot)
Top

RectangleHotSpot オブジェクトで定義される四角形領域の上辺の y 座標を取得または設定します。

ViewState

同一のページに対する複数の要求にわたって、HotSpot オブジェクトのビューステートを保存し、復元できるようにする状態情報のディクショナリを取得します。

(継承元 HotSpot)

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetCoordinates()

RectangleHotSpot オブジェクトの左上隅の x 座標と y 座標、および右下隅の x 座標と y 座標を表す文字列を返します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
LoadViewState(Object)

HotSpot オブジェクトが前回保存したビューステートをオブジェクトに復元します。

(継承元 HotSpot)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
SaveViewState()

ページがサーバーにポスト バックされた時間以降に発生した、HotSpot オブジェクトのビューステートへの変更を保存します。

(継承元 HotSpot)
ToString()

String オブジェクトのこのインスタンスの HotSpot 表現を返します。

(継承元 HotSpot)
TrackViewState()

ビューステートの変更を HotSpot オブジェクトに追跡させ、変更をオブジェクトの StateBag オブジェクトに格納できるようにします。 このオブジェクトは、ViewState プロパティによってアクセスできます。

(継承元 HotSpot)

明示的なインターフェイスの実装

IStateManager.IsTrackingViewState

HotSpot オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。

(継承元 HotSpot)
IStateManager.LoadViewState(Object)

HotSpot オブジェクトが前回保存したビューステートをオブジェクトに復元します。

(継承元 HotSpot)
IStateManager.SaveViewState()

ページが最後にサーバーにポスト バックされた時間以降に発生した、HotSpot オブジェクトのビューステートへの変更を保存します。

(継承元 HotSpot)
IStateManager.TrackViewState()

ビューステートへの変更を追跡するように HotSpot 領域に指示します。

(継承元 HotSpot)

適用対象

こちらもご覧ください