방법: Word 문서에 책갈피 컨트롤 추가

문서 수준 프로젝트에서는 디자인 타임이나 런타임에 프로젝트의 문서에 Bookmark 컨트롤을 추가할 수 있습니다. 응용 프로그램 수준 프로젝트에서는 런타임에 열려 있는 문서에 Bookmark 컨트롤을 추가할 수 있습니다.

적용 대상: 이 항목의 정보는 Word 2007 및 Word 2010의 문서 수준 프로젝트 및 응용 프로그램 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

이 항목에서는 다음 작업에 대해 설명합니다.

  • 디자인 타임에 Bookmark 컨트롤 추가

  • 런타임에 문서 수준 프로젝트에서 Bookmark 컨트롤 추가

  • 런타임에 응용 프로그램 수준 프로젝트에서 Bookmark 컨트롤 추가

Bookmark 컨트롤에 대한 자세한 내용은 책갈피 컨트롤을 참조하십시오.

디자인 타임에 Bookmark 컨트롤 추가

디자인 타임에 다음과 같은 방법으로 문서 수준 프로젝트의 문서에 Bookmark 컨트롤을 추가할 수 있습니다.

  • Visual Studio 도구 상자에서

    Bookmark 컨트롤을 도구 상자에서 문서로 끌어 놓을 수 있습니다. 이미 도구 상자를 사용하여 Windows Forms 컨트롤을 문서에 추가하는 경우 이 방법을 선택하는 것이 좋습니다.

  • Word 내에서

    네이티브 책갈피를 추가할 때와 동일한 방식으로 문서에 Bookmark 컨트롤을 추가할 수 있습니다. 이렇게 Bookmark 컨트롤을 추가하면 컨트롤을 만들면서 동시에 그 이름을 지정할 수 있습니다.

  • 데이터 소스 창에서

    Bookmark 컨트롤을 데이터 소스 창에서 문서로 끌어 놓을 수 있습니다. 이 방법은 컨트롤을 데이터에 바인딩하는 작업도 동시에 수행하려는 경우에 유용합니다. 데이터 소스 창에서 Windows Form 컨트롤을 추가할 때와 동일한 방식으로 호스트 컨트롤을 추가할 수 있습니다. 자세한 내용은 데이터 바인딩 및 Windows Forms을 참조하십시오.

참고

다음 지침처럼 컴퓨터에서 Visual Studio 사용자 인터페이스 요소 일부에 대한 이름이나 위치를 다르게 표시할 수 있습니다. 이러한 요소는 사용하는 Visual Studio 버전 및 설정에 따라 결정됩니다. 자세한 내용은 Visual Studio 설정을 참조하십시오.

도구 상자에서 문서에 Bookmark 컨트롤을 추가하려면

  1. 도구 상자를 열고 Word 컨트롤 탭을 클릭합니다.

  2. Bookmark 컨트롤을 문서로 끌어 옵니다.

    책갈피 추가 대화 상자가 나타납니다.

  3. 책갈피에 포함할 텍스트 또는 다른 항목을 선택합니다.

  4. 확인을 클릭합니다.

    기본 책갈피 이름을 사용하지 않으려면 속성 창에서 이름을 변경합니다.

Word에서 문서에 Bookmark 컨트롤을 추가하려면

  1. Visual Studio 디자이너에 호스팅된 문서에서 책갈피를 추가할 위치에 커서를 놓거나 책갈피로 묶을 텍스트를 선택합니다.

  2. 리본 메뉴의 삽입 탭에 있는 연결 그룹에서 책갈피 단추를 클릭합니다.

  3. 책갈피 대화 상자에서 새 책갈피의 이름을 입력하고 추가를 클릭합니다.

런타임에 문서 수준 프로젝트에서 Bookmark 컨트롤 추가

런타임에 프로젝트에서 ThisDocument 클래스에 포함된 Controls 속성의 메서드를 사용하여 Bookmark 컨트롤을 문서에 프로그래밍 방식으로 추가할 수 있습니다. 다음 방법으로 Bookmark 컨트롤을 추가하는 데 사용할 수 있는 두 개의 메서드 오버로드가 있습니다.

동적으로 만들어진 Bookmark 컨트롤은 문서가 닫힐 때 문서에 유지되지 않습니다. 그러나 네이티브 Microsoft.Office.Interop.Word.Bookmark는 문서에 그대로 유지됩니다. 따라서 다음에 문서가 열릴 때 네이티브 책갈피를 기반으로 하는 Bookmark를 다시 만들 수 있습니다. 자세한 내용은 런타임에 Office 문서에 컨트롤 추가를 참조하십시오.

프로그래밍 방식으로 문서에 Bookmark 컨트롤을 추가하려면

  • 프로젝트의 ThisDocument_Startup 이벤트 처리기에서 문서의 첫 번째 단락에 Bookmark 컨트롤을 추가하는 다음 코드를 삽입합니다.

    Dim firstParagraph As Microsoft.Office.Tools.Word.Bookmark
    firstParagraph = Me.Controls.AddBookmark(Me.Paragraphs(1).Range, "FirstParagraph")
    
    Microsoft.Office.Tools.Word.Bookmark firstParagraph;
    firstParagraph = this.Controls.AddBookmark(this.Paragraphs[1].Range,
        "FirstParagraph");
    

    참고

    기존 Microsoft.Office.Interop.Word.Bookmark에서 Microsoft.Office.Tools.Word.Bookmark 컨트롤을 만들려면 AddBookmark 메서드를 사용하고 기존 Microsoft.Office.Interop.Word.Bookmark를 전달합니다.

런타임에 응용 프로그램 수준 프로젝트에서 Bookmark 컨트롤 추가

런타임에 응용 프로그램 수준 추가 기능을 사용하여 열려 있는 문서에 Bookmark 컨트롤을 프로그래밍 방식으로 추가할 수 있습니다. 이렇게 하려면 열려 있는 문서를 기반으로 하는 Document 호스트 항목을 생성한 다음 이 호스트 항목에 대한 Controls 속성의 메서드를 사용합니다. 다음 방법으로 Bookmark 컨트롤을 추가하는 데 사용할 수 있는 두 개의 메서드 오버로드가 있습니다.

동적으로 만들어진 Bookmark 컨트롤은 문서가 닫힐 때 문서에 유지되지 않습니다. 그러나 네이티브 Microsoft.Office.Interop.Word.Bookmark는 문서에 그대로 유지됩니다. 따라서 다음에 문서가 열릴 때 네이티브 책갈피를 기반으로 하는 Bookmark를 다시 만들 수 있습니다. 자세한 내용은 Office 문서에서 동적 컨트롤 유지를 참조하십시오.

응용 프로그램 수준 프로젝트에서 호스트 항목을 생성하는 방법에 대한 자세한 내용은 런타임에 응용 프로그램 수준 추가 기능의 Word 문서 및 Excel 통합 문서 확장을 참조하십시오.

지정된 범위에 Bookmark 컨트롤을 추가하려면

  • ControlCollection.AddBookmark(Range, String) 메서드를 사용하고 Bookmark를 추가할 Range를 전달합니다.

    다음 코드 예제에서는 활성 문서의 시작 부분에 새 Bookmark를 추가합니다. 이 예제를 사용하려면 Word 추가 기능 프로젝트의 ThisAddIn_Startup 이벤트 처리기에서 이 코드를 실행합니다.

    ' Use the following line of code in projects that target the .NET Framework 4.
    Dim extendedDocument As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    
    ' In projects that target the .NET Framework 3.5, use the following line of code.
    ' Dim extendedDocument As Document = Me.Application.ActiveDocument.GetVstoObject()
    
    Dim firstParagraph As Bookmark = extendedDocument.Controls.AddBookmark( _
        extendedDocument.Paragraphs(1).Range, "FirstParagraph")
    
    // Use the following line of code in projects that target the .NET Framework 4.
    Document extendedDocument = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    
    // In projects that target the .NET Framework 3.5, use the following line of code.
    // Document extendedDocument = this.Application.ActiveDocument.GetVstoObject();
    
    Bookmark firstParagraph = extendedDocument.Controls.AddBookmark(
        extendedDocument.Paragraphs[1].Range, "FirstParagraph");
    

네이티브 Bookmark 컨트롤을 기반으로 하는 Bookmark 컨트롤을 추가하려면

  • ControlCollection.AddBookmark(Bookmark, String) 메서드를 사용하고 새 Bookmark의 기본으로 사용할 기존 Microsoft.Office.Interop.Word.Bookmark를 전달합니다.

    다음 코드 예제에서는 활성 문서의 첫 번째 Microsoft.Office.Interop.Word.Bookmark를 기반으로 하는 새 Bookmark를 만듭니다. 이 예제를 사용하려면 Word 추가 기능 프로젝트의 ThisAddIn_Startup 이벤트 처리기에서 이 코드를 실행합니다.

    If Me.Application.ActiveDocument.Bookmarks.Count > 0 Then
        Dim firstBookmark As Word.Bookmark = Me.Application.ActiveDocument.Bookmarks(1)
    
        ' Use the following line of code in projects that target the .NET Framework 4.
        Dim extendedDocument As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    
        ' In projects that target the .NET Framework 3.5, use the following line of code.
        ' Dim extendedDocument As Document = Me.Application.ActiveDocument.GetVstoObject()
    
        Dim vstoBookmark As Bookmark = extendedDocument.Controls.AddBookmark( _
            firstBookmark, "VSTOBookmark")
    End If
    
    if (this.Application.ActiveDocument.Bookmarks.Count > 0)
    {
        object index = 1;
        Word.Bookmark firstBookmark = this.Application.ActiveDocument.Bookmarks.get_Item(ref index);
    
        // Use the following line of code in projects that target the .NET Framework 4.
        Document extendedDocument = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    
        // In projects that target the .NET Framework 3.5, use the following line of code.
        // Document extendedDocument = this.Application.ActiveDocument.GetVstoObject();
    
        Bookmark vstoBookmark = extendedDocument.Controls.AddBookmark(
                firstBookmark, "VSTOBookmark");
    }
    

참고 항목

작업

방법: 책갈피 컨트롤 크기 조정

개념

확장된 개체를 사용하여 Word 자동화

호스트 항목 및 호스트 컨트롤 개요

런타임에 Office 문서에 컨트롤 추가

호스트 항목 및 호스트 컨트롤의 프로그래밍에 대한 제한 사항

호스트 컨트롤의 도우미 메서드

기타 리소스

응용 프로그램 수준 추가 기능 프로그래밍

문서 수준 사용자 지정 프로그래밍