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);
}
JScript does not support events.

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.

Examples

In this example, an SelectionResized event handler examines a selection after it has been resized. If the selected Strokes collection has been resized so that either dimension is smaller than 500 HIMETRIC units, the selection is restored to its original size.

Private Sub mInkObject_SelectionResized(ByVal sender As Object, ByVal e As InkOverlaySelectionResizedEventArgs)
    Dim newBounds As Rectangle = mInkObject.Selection.GetBoundingBox()
    ' Check if we are too small 
    If (newBounds.Height < 500 Or newBounds.Width < 500) Then 
        ' Resize to back to original rectangle
        mInkObject.Selection.ScaleToRectangle(e.OldSelectionBoundingRect)

        ' Trick to insure that selection handles are updated
        mInkObject.Selection = mInkObject.Selection
    End If 
End Sub
private void mInkObject_SelectionResized(object sender, InkOverlaySelectionResizedEventArgs e)
{
    Rectangle newBounds = mInkObject.Selection.GetBoundingBox();
    // Check if we are too small 
    if (newBounds.Height < 500 || newBounds.Width < 500)
    {
        // Resize to back to original rectangle
        mInkObject.Selection.ScaleToRectangle(e.OldSelectionBoundingRect);

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

Platforms

Windows 7, Windows Vista, Windows Server 2008 R2, Windows Server 2008

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkOverlay Class

InkOverlay Members

Microsoft.Ink Namespace

InkOverlaySelectionResizedEventArgs

InkOverlay.Selection

InkOverlay.SelectionResizing