다음은 파일 및 문서를 사용하는 다양한 방법에 대한 작은 코드 샘플 모음입니다.
활성 텍스트 보기 가져오기
현재 활성 텍스트 보기를 가져와 텍스트 버퍼 텍스트를 조작합니다.
DocumentView docView = await VS.Documents.GetActiveDocumentViewAsync();
if (docView?.TextView == null) return; //not a text window
SnapshotPoint position = docView.TextView.Caret.Position.BufferPosition;
docView.TextBuffer?.Insert(position, "some text"); // Inserts text at the caret
파일 아이콘 연결
솔루션 탐색기에서 아이콘을 파일 확장과 연결하려면 패키지 클래스에 [ProvideFileIcon()] 특성을 추가합니다.
[ProvideFileIcon(".abc", "KnownMonikers.Reference")]
public sealed class MyPackage : ToolkitPackage
{
...
}
KnownMonikers 탐색기 도구 창을 사용하여 컬렉션에서 사용할 수 있는 KnownMonikers 수천 개의 아이콘을 참조하세요. 주 메뉴의 다른 창 보기 > 에서 찾습니다.
파일 열기
도우미 클래스를 Microsoft.VisualStudio.Shell.VsShellUtilities 사용합니다.
string fileName = "c:\\file.txt";
await VS.Document.OpenAsync(fileName);
프로젝트를 통해 파일 열기
열려 있는 파일이 솔루션의 일부인 경우 이 메서드를 사용합니다.
string fileName = "c:\\file.txt";
await VS.Documents.OpenViaProjectAsync(fileName);
미리 보기 탭에서 파일 열기
임시 탭이라고도 하는 미리 보기 탭은 문서 오른쪽에서 열리는 임시 탭입니다. 미리 보기 탭에서 다음과 같은 파일을 엽니다.
string fileName = "c:\\file.txt";
await VS.Documents.OpenInPreviewTabAsync(fileName);
ITextBuffer에서 파일 이름 가져오기
네임스페이스 Microsoft.VisualStudio.Text에 있는 확장 메서드 buffer.GetFileName()를 사용하십시오.
string fileName = buffer.GetFileName();
파일의 SolutionItem
절대 파일 경로에서 SolutionItem를 찾습니다.
string fileName = "c:\\file.txt";
PhysicalFile item = await PhysicalFile.FromFileAsync(fileName);