LEADTOOLS Annotations (Leadtools.Annotations assembly)
LEAD Technologies, Inc

BeforeDrawingObjects Event

Example 





Occurs during drawing before the objects are drawn.
Syntax
public event EventHandler<AnnPaintEventArgs> BeforeDrawingObjects
'Declaration
 
Public Event BeforeDrawingObjects As EventHandler(Of AnnPaintEventArgs)
'Usage
 
Dim instance As AnnContainer
Dim handler As EventHandler(Of AnnPaintEventArgs)
 
AddHandler instance.BeforeDrawingObjects, handler
public event EventHandler<AnnPaintEventArgs> BeforeDrawingObjects
add_BeforeDrawingObjects(function(sender, e))
remove_BeforeDrawingObjects(function(sender, e))

public:
event EventHandler<AnnPaintEventArgs^>^ BeforeDrawingObjects
Event Data

The event handler receives an argument of type AnnPaintEventArgs containing data related to this event. The following AnnPaintEventArgs properties provide information specific to this event.

PropertyDescription
Graphics Gets the graphics used to paint.
Remarks
You can prevent the AnnContainer from raising this event by calling DisableDrawObjectEvents. You can re-enable the raising of this event by calling EnableDrawObjectEvents.
Example
 
Public theContainer As AnnContainer
Public Sub AnnContainer_BeforeDrawingObjects(ByVal container As AnnContainer)
   ' theContainer is set so that it can be accessed in the container_BeforeDrawingObjects event
   theContainer = container
   AddHandler container.BeforeDrawingObjects, AddressOf container_BeforeDrawingObjects
End Sub
Private Sub container_BeforeDrawingObjects(ByVal sender As Object, ByVal e As AnnPaintEventArgs)
   ' draw a grid, 100 pixels apart

   Dim graphics As Graphics = e.Graphics

   ' set the current transform from the container
   graphics.MultiplyTransform(theContainer.Transform)

   ' get the bounds in pixels
   Dim rc As AnnRectangle = theContainer.Bounds.ConvertTo(theContainer.UnitConverter, AnnUnit.Pixel)

   Dim p As Pen = New Pen(Color.FromArgb(128, 255, 255, 255))
   Try
      ' draw the grid
      Dim x As Single = rc.Left
      Do While x <= rc.Right
         graphics.DrawLine(p, x, 0, x, rc.Bottom)
         x += 100
      Loop

      Dim y As Single = rc.Top
      Do While y <= rc.Bottom
         graphics.DrawLine(p, 0, y, rc.Right, y)
         y += 100
      Loop
   Finally
      CType(p, IDisposable).Dispose()
   End Try
End Sub
public AnnContainer theContainer;
public void AnnContainer_BeforeDrawingObjects(AnnContainer container)
{
   // theContainer is set so that it can be accessed in the container_BeforeDrawingObjects event
   theContainer = container;
   container.BeforeDrawingObjects += new EventHandler<AnnPaintEventArgs>(container_BeforeDrawingObjects);
}
private void container_BeforeDrawingObjects(object sender, AnnPaintEventArgs e)
{
   // draw a grid, 100 pixels apart

   Graphics graphics = e.Graphics;

   // set the current transform from the container
   graphics.MultiplyTransform(theContainer.Transform);

   // get the bounds in pixels
   AnnRectangle rc = theContainer.Bounds.ConvertTo(theContainer.UnitConverter, AnnUnit.Pixel);

   using (Pen p = new Pen(Color.FromArgb(128, 255, 255, 255)))
   {
      // draw the grid
      for (float x = rc.Left; x <= rc.Right; x += 100)
         graphics.DrawLine(p, x, 0, x, rc.Bottom);

      for (float y = rc.Top; y <= rc.Bottom; y += 100)
         graphics.DrawLine(p, 0, y, rc.Right, y);
   }
}
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

AnnContainer Class
AnnContainer Members

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.