InkOverlayStrokesDeletingEventHandler 대리자
업데이트: 2007년 11월
InkOverlay 개체의 StrokesDeleting 이벤트를 처리하는 메서드를 나타냅니다.
네임스페이스: Microsoft.Ink
어셈블리: Microsoft.Ink(Microsoft.Ink.dll)
구문
‘선언
Public Delegate Sub InkOverlayStrokesDeletingEventHandler ( _
sender As Object, _
e As InkOverlayStrokesDeletingEventArgs _
)
‘사용 방법
Dim instance As New InkOverlayStrokesDeletingEventHandler(AddressOf HandlerMethod)
public delegate void InkOverlayStrokesDeletingEventHandler(
Object sender,
InkOverlayStrokesDeletingEventArgs e
)
public delegate void InkOverlayStrokesDeletingEventHandler(
Object^ sender,
InkOverlayStrokesDeletingEventArgs^ e
)
/** @delegate */
public delegate void InkOverlayStrokesDeletingEventHandler(
Object sender,
InkOverlayStrokesDeletingEventArgs e
)
JScript에서는 대리자를 지원하지 않습니다.
매개 변수
- sender
형식: System.Object
이 이벤트의 소스 InkOverlay 개체입니다.
- e
형식: Microsoft.Ink.InkOverlayStrokesDeletingEventArgs
이벤트 데이터가 들어 있는 InkOverlayStrokesDeletingEventArgs 개체입니다.
설명
StrokesDeleting 이벤트는 Stroke 개체가 InkOverlay.Ink 속성에서 삭제되기 전에 발생합니다.
InkOverlayStrokesDeletingEventHandler 대리자를 만들 때는 이벤트를 처리할 메서드를 식별합니다. 이벤트를 이벤트 처리기와 연결하려면 대리자의 인스턴스를 해당 이벤트에 추가합니다. 대리자를 제거하지 않는 경우 이벤트가 발생할 때마다 이벤트 처리기가 호출됩니다. 이벤트 관심도는 성능상의 이유로 기본적으로 해제되어 있지만 이벤트 처리기를 추가하면 관리 코드에서 자동으로 설정됩니다.
예제
이 예제에서는 StrokesDeleting 이벤트에 대한 알림을 신청하여 마지막으로 삭제된 스트로크를 복원하는 방법을 보여 줍니다.
StrokesDeleting 이벤트가 발생하면 삭제될 Stroke 개체를 저장합니다.
Private Sub mInkObject_StrokesDeleting(ByVal sender As Object, ByVal e As InkOverlayStrokesDeletingEventArgs)
' Store strokes for later undo. They must be stored in
' a separate Ink object.
mInkDeleted = New Ink()
mInkDeleted.AddStrokesAtRectangle(e.StrokesToDelete, e.StrokesToDelete.GetBoundingBox())
End Sub
private void mInkObject_StrokesDeleting(object sender, InkOverlayStrokesDeletingEventArgs e)
{
// Store strokes for later undo. They must be stored in
// a separate Ink object.
mInkDeleted = new Ink();
mInkDeleted.AddStrokesAtRectangle(e.StrokesToDelete, e.StrokesToDelete.GetBoundingBox());
}
MenuItem을 클릭하는 등의 사용자 동작에 응답하여 이전에 삭제된 Stroke 개체가 원래 Ink 개체에 다시 추가됩니다.
If Not mInkDeleted Is Nothing Then
' Add strokes back. (You need to use Ink.AddStrokesAtRectangle as opposed
' to Strokes.Add because you are dealing with two different Ink objects.)
mInkObject.Ink.AddStrokesAtRectangle(mInkDeleted.Strokes, mInkDeleted.Strokes.GetBoundingBox())
mInkDeleted = Nothing
' For best performance, you should Invalidate the rectangle created by the
' bounding box (converted from ink space to pixel space). For simplicity,
' we will just refresh the entire control.
Refresh()
End If
if (mInkDeleted != null)
{
// Add strokes back. (You need to use Ink.AddStrokesAtRectangle as opposed
// to Strokes.Add because you are dealing with two different Ink objects.)
mInkObject.Ink.AddStrokesAtRectangle(mInkDeleted.Strokes, mInkDeleted.Strokes.GetBoundingBox());
mInkDeleted = null;
// For best performance, you should Invalidate the rectangle created by the
// bounding box (converted from ink space to pixel space). For simplicity,
// we will just refresh the entire control.
Refresh();
}
플랫폼
Windows Vista
.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
3.0에서 지원