2013-03-14 4 views

답변

1

는 이것은 명령 GUID 등 typeof(VSConstants.VSStd97CmdID).GUID 및 명령 ID와 함께 VSConstants.VSStd97CmdID.PasteDTE.Events.CommandEvents (MSDN)를 사용하여 차단 될 수있다.

예 : 그것뿐만 아니라 다른 상황에서 붙여 넣기를 차단하지만, 좋은 첫 걸음 수로

protected override void Initialize() { 
    var dte = (DTE)GetService(typeof(DTE)); 

    var pasteGuid = typeof(VSConstants.VSStd97CmdID).GUID.ToString("B"); 
    var pasteID = (int)VSConstants.VSStd97CmdID.Paste; 

    _pasteEvent = dte.Events.CommandEvents[pasteGuid, pasteID]; 
    _pasteEvent.BeforeExecute += delegate { Trace.WriteLine("Before paste."); }; 
    _pasteEvent.AfterExecute += delegate { Trace.WriteLine("After paste."); }; 
} 

이 정말 완벽하지 않습니다. 붙여 넣기 중에 첨부 된 항목을 가져 오는 동안 ItemAdded 이벤트를 볼 수도 있습니다.

관련 문제