PolygonHotSpot.Coordinates Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
A string of coordinates that represents the vertexes of a PolygonHotSpot object.
public:
property System::String ^ Coordinates { System::String ^ get(); void set(System::String ^ value); };
public string Coordinates { get; set; }
member this.Coordinates : string with get, set
Public Property Coordinates As String
Property Value
A string that represents the coordinates of a PolygonHotSpot object's vertexes.
Examples
The following code example demonstrates how to programmatically create a PolygonHotSpot object and add it to an ImageMap control. The Coordinates property is used to specify the coordinates of the vertexes of the PolygonHotSpot object. The ImageMap control contains two other PolygonHotSpot objects that have been added declaratively. Each PolygonHotSpot object represents a geographical region on the map. When the user clicks a PolygonHotSpot object, it posts back to the server and the type and name of the hot spot are displayed in a label.
<%@ 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 Page_Load(object sender, EventArgs e)
{
// Programmatically create a PolygonHotSpot.
PolygonHotSpot Polygon1 = new PolygonHotSpot();
Polygon1.Coordinates = "128,185,335,157,400,224,400,400,228,400";
Polygon1.PostBackValue = "Southern";
Polygon1.AlternateText = "Southern Region";
// Add it to the end of the ImageMap control's
// HotSpotCollection.
Regions.HotSpots.Add(Polygon1);
}
void RegionMap_Clicked (object sender, ImageMapEventArgs e)
{
string hotSpotType;
// When a user clicks a hot spot, display
// the hot spot's type and name.
switch (e.PostBackValue)
{
case "Western":
hotSpotType = Regions.HotSpots[0].ToString();
Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
break;
case "Northern":
hotSpotType = Regions.HotSpots[1].ToString();
Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
break;
case "Southern":
hotSpotType = Regions.HotSpots[2].ToString();
Message1.Text = "You selected " + hotSpotType + " " + e.PostBackValue;
break;
default:
Message1.Text = "You did not click a valid hot spot region.";
break;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>PolygonHotSpot Constructor Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>PolygonHotSpot Constructor Example</h3>
<!-- Change or remove the width and height attributes as
appropriate for your image. -->
<asp:imagemap id="Regions"
imageurl="Images/RegionMap.jpg"
alternatetext="Sales regions"
hotspotmode="PostBack"
width="400"
height="400"
onclick="RegionMap_Clicked"
runat="Server">
<asp:PolygonHotSpot
coordinates="0,0,176,0,125,182,227,400,0,400"
postbackvalue="Western"
alternatetext="Western Region">
</asp:PolygonHotSpot>
<asp:PolygonHotSpot
coordinates="177,0,400,0,400,223,335,154,127,180"
postbackvalue="Northern"
alternatetext="Northern Region">
</asp:PolygonHotSpot>
</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 Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Programmatically create a PolygonHotSpot.
Dim Polygon1 As New PolygonHotSpot
Polygon1.Coordinates = "128,185,335,157,400,224,400,400,228,400"
Polygon1.PostBackValue = "Southern"
Polygon1.AlternateText = "Southern Region"
' Add it to the end of the ImageMap control's
' HotSpotCollection.
Regions.HotSpots.Add(Polygon1)
End Sub
Sub RegionMap_Clicked(ByVal sender As Object, ByVal e As ImageMapEventArgs)
Dim hotSpotType As String
' When a user clicks a hot spot, display
' the hot spot's type and name.
Select Case (e.PostBackValue)
Case ("Western")
hotSpotType = Regions.HotSpots(0).ToString()
Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue
Case ("Northern")
hotSpotType = Regions.HotSpots(1).ToString()
Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue
Case ("Southern")
hotSpotType = Regions.HotSpots(2).ToString()
Message1.Text = "You selected " & hotSpotType & " " & e.PostBackValue
Case Else
Message1.Text = "You did not click a valid hot spot region."
End Select
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>PolygonHotSpot Constructor Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>PolygonHotSpot Constructor Example</h3>
<!-- Change or remove the width and height attributes as
appropriate for your image. -->
<asp:imagemap id="Regions"
imageurl="Images/RegionMap.jpg"
alternatetext="Sales regions"
hotspotmode="PostBack"
width="400"
height="400"
onclick="RegionMap_Clicked"
runat="Server">
<asp:PolygonHotSpot
coordinates="0,0,176,0,125,182,227,400,0,400"
postbackvalue="Western"
alternatetext="Western Region">
</asp:PolygonHotSpot>
<asp:PolygonHotSpot
coordinates="177,0,400,0,400,223,335,154,127,180"
postbackvalue="Northern"
alternatetext="Northern Region">
</asp:PolygonHotSpot>
</asp:imagemap>
<br /><br />
<asp:label id="Message1"
runat="Server">
</asp:label>
</form>
</body>
</html>
Remarks
Use the Coordinates property to specify the coordinates of the vertexes of a PolygonHotSpot object. A polygon vertex is a point at which two polygon edges meet. The string that you specify must be formatted with each coordinate separated by a comma. Each vertex that you specify must have both an x- coordinate and a y-coordinate. For example, the string "128,185,335,157,510,224,510,383,228,383" defines a polygon hot spot with five vertexes. The x-coordinate of the first vertex is 128. The y-coordinate of the first vertex is 185.