This document is archived and information here might be outdated.  Recommended version.


IMapControl3.DrawShape Method (ArcObjects .NET 10.4 SDK)
ArcObjects Library Reference (Controls)  

IMapControl3.DrawShape Method

Draws a geometry shape on the MapControl.

[Visual Basic .NET]
Public Sub DrawShape ( _
    ByVal Shape As IGeometry, _
    [ByRef symbol As Object] _
)
[C#]
public void DrawShape (
    IGeometry Shape,
    ref object symbol
);
[C#]

Optional Values

symbol   To indicate that this parameter is undefined, first define a variable object Missing=Type.Missing; then pass this in as ref Missing.
[C++]
HRESULT DrawShape(
  IGeometry* Shape,
  VARIANT* symbol
);
[C++]

Parameters Shape [in]
Shape is a parameter of type IGeometry symbol [optional] symbol is a parameter of type VARIANT
To indicate this parameter is undefined pass a reference to a VARIANT with type VT_ERROR and scode value of DISP_E_PARAMNOTFOUND.

Product Availability

Available with ArcGIS Engine.

Description

DrawShape draws the supplied geometry onto the display. Use the DrawShape method within the esriViewForeground phase of the IMapControlEvents2::OnAfterDraw event.

Errors Returned

1025 800a0401: The specified symbol does not indicate the correct type of object

1030 800a0406: The supplied geometry does not have a geometry type that is supported for drawing 

Remarks

Geometry objects implementing IEnvelope, IMultiPatch, IMultiPoint, IPoint, IPolygon and IPolyline are supported. 

[C#]
private void axMapControl1_OnAfterDraw(object sender, ESRI.ArcGIS.MapControl.IMapControlEvents2_OnAfterDrawEvent e)
{
    if (e.viewDrawPhase == (int) esriViewDrawPhase.esriViewForeground)
    {
        //Use DrawShape...
    }
}

See Also

IMapControl3 Interface | IMapControl3.DrawText Method | IMapControl2.DrawText Method | IMapControl4.DrawText Method | IMapControl3.FlashShape Method | IMapControl4.FlashShape Method | IMapControl2.FlashShape Method