Share via


InkOverlay.SelectionResized Event

Occurs when the size of the current selection has changed, such as through alterations to the user interface, cut-and-paste procedures, or the Selection property.

Namespace: Microsoft.Ink
Assembly: Microsoft.Ink (in microsoft.ink.dll)

Syntax

'Declaration
Public Event SelectionResized As InkOverlaySelectionResizedEventHandler
'Usage
Dim instance As InkOverlay
Dim handler As InkOverlaySelectionResizedEventHandler

AddHandler instance.SelectionResized, handler
public event InkOverlaySelectionResizedEventHandler SelectionResized
public:
event InkOverlaySelectionResizedEventHandler^ SelectionResized {
    void add (InkOverlaySelectionResizedEventHandler^ value);
    void remove (InkOverlaySelectionResizedEventHandler^ value);
}
/** @event */
public void add_SelectionResized (InkOverlaySelectionResizedEventHandler value)

/** @event */
public void remove_SelectionResized (InkOverlaySelectionResizedEventHandler value)
In JScript, you can handle the events defined by a class, but you cannot define your own.
Not applicable.

Remarks

The event handler receives an argument of type InkOverlaySelectionResizedEventArgs containing data about this event.

When you create an InkOverlaySelectionResizedEventHandler delegate, you identify the method that handles the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For performance reasons, the default event interest is off but is turned on automatically if you add an event handler.

To get the old bounding rectangle of the collection of strokes that has been moved, use the OldSelectionBoundingRect of the InkOverlaySelectionResizedEventArgs object. To get the new bounding rectangle, call the GetBoundingBox method on the Strokes collection in the InkOverlay object's Selection property.

Example

This C# example is a SelectionResized event handler that affects an InkOverlay object's selection after the selection has been resized. If the selection has been resized so that either dimension is smaller than 500 HIMETRIC units, then the event handler restores the selection to its previous size.

using Microsoft.Ink;
//...
  theInkOverlay.SelectionMoved += new InkOverlaySelectionMovedEventHandler(theInkOverlay_SelectionMoved);
//...
  private void theInkOverlay_SelectionMoved(object sender, InkOverlaySelectionMovedEventArgs e)
  {
       Rectangle newBounds = theInkOverlay.Selection.GetBoundingBox();
       
       // Check if we are too small
       if (newBounds.Height < 500 || newBounds.Width < 500)
       {
           // Resize to back to original rectangle
           theInkOverlay.Selection.ScaleToRectangle(e.OldSelectionBoundingRect);

           // Trick to insure that selection handles are updated
           theInkOverlay.Selection = theInkOverlay.Selection;
       }
   }
//...

This Microsoft Visual Basic .NET example is a SelectionResized event handler that affects an InkOverlay object's selection after the selection is resized. If the selection has been resized so that either dimension is smaller than 500 HIMETRIC units, then the event handler restores the selection to its previous size.

Imports Microsoft.Ink
'...
    Private WithEvents theInkOverlay As InkOverlay
'...
    Private Sub theInkOverlay_SelectionResized(ByVal sender As Object, _
    ByVal e As Microsoft.Ink.InkOverlaySelectionResizedEventArgs) _
    Handles theInkOverlay.SelectionResized
        Dim newBounds As Rectangle = theInkOverlay.Selection.GetBoundingBox()

        ' Check if we are too small
        If newBounds.Height < 500 Or newBounds.Width < 500 Then
            ' Resize to back to original rectangle
            theInkOverlay.Selection.ScaleToRectangle(e.OldSelectionBoundingRect)

            ' Trick to insure that selection handles are updated
            theInkOverlay.Selection = theInkOverlay.Selection
        End If
    End Sub
'...

Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkOverlay Class
InkOverlay Members
Microsoft.Ink Namespace
InkOverlaySelectionResizedEventArgs
InkOverlay.Selection
InkOverlay.SelectionResizing