3

은 내가 VISX 프로젝트를 생성하고,이 코드 조각을 썼다 :최소 작동 IVsTextViewCreationListener 구현은 무엇입니까?

using Microsoft.VisualStudio.Editor; 
using Microsoft.VisualStudio.TextManager.Interop; 
using System.ComponentModel.Composition; 

namespace MyExtension 
{ 
    [Export(typeof(IVsTextViewCreationListener))] 
    public class Main : IVsTextViewCreationListener 
    { 
     public void VsTextViewCreated(IVsTextView textViewAdapter) 
     { 
     } 
    } 
} 

나는 VsTextViewCreated 방법 내부에 중단 점을 넣을 경우, Visual Studio를 그것이 공격하지 않을 것이라는 점을 저에게 알려합니다. 디버거에서 실행되는 Visual Studio의 두 번째 인스턴스에서 파일을 열면 실제로 트리거되지 않습니다.

내가 뭘 잘못하고 있니?

답변

4

당신은 당신의 클래스의 ContentType 및 TextViewRole를 지정해야합니다 enter image description here

+0

가 MefComponent을 설명하기 위해 샘플 코드를 추가하십시오 :

또한
[Microsoft.VisualStudio.Utilities.ContentType("text")] [Microsoft.VisualStudio.Text.Editor.TextViewRole(Microsoft.VisualStudio.Text.Editor.PredefinedTextViewRoles.Editable)] 

이 확장 매니페스트에 MefComponent 자산을 선언하는 것을 잊지 마세요 맡은 일. –

+0

MefComponent의 스크린 샷을 추가했습니다. –

+0

나는 아직도 그것을 작동시킬 수 없다. 귀찮게해서 미안하지만 작동중인 샘플 프로젝트가 주위에 누출 될 수 있습니까? –