다음을 통해 공유


Word 문서 또는 Excel 통합 문서에 작업 창 추가

Microsoft Office Word 문서 또는 Microsoft Excel 통합 문서에 작업 창을 추가하려면 먼저 Windows Forms 사용자 정의 컨트롤을 만듭니다. 그런 다음 프로젝트의 ThisDocument.ActionsPane 필드(Word) 또는 ThisWorkbook.ActionsPane 필드(Excel)의 Controls 속성에 사용자 정의 컨트롤을 추가합니다.

적용 대상: 이 항목의 정보는 Excel 및 Word의 문서 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 애플리케이션 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하세요.

참고 항목

일부 Visual Studio 사용자 인터페이스 요소의 경우 다음 지침에 설명된 것과 다른 이름 또는 위치가 시스템에 표시될 수 있습니다. 이러한 요소는 사용하는 Visual Studio 버전 및 설정에 따라 결정됩니다. 자세한 내용은 Visual Studio IDE 개인 설정을 참조하세요.

사용자 정의 컨트롤 만들기

다음 절차에서는 Word 또는 Excel 프로젝트에서 사용자 정의 컨트롤을 만드는 방법을 보여 줍니다. 또한 클릭하면 문서 또는 통합 문서에 텍스트를 쓰는 단추를 사용자 정의 컨트롤에 추가합니다.

사용자 정의 컨트롤을 만들려면

  1. Visual Studio에서 Word 또는 Excel 문서 수준 프로젝트를 엽니다.

  2. 프로젝트 메뉴에서 새 항목 추가를 클릭합니다.

  3. 새 항목 추가 대화 상자에서 작업 창 컨트롤을 선택하고 이름을 HelloControl로 지정한 다음 추가를 클릭합니다.

    참고 항목

    또는 사용자 정의 컨트롤 항목을 프로젝트에 추가할 수 있습니다. 작업 창 컨트롤 항목과 사용자 정의 컨트롤 항목에서 생성되는 클래스는 기능적으로 동일합니다.

  4. 도구 상자Windows Forms 탭에서 단추 컨트롤을 컨트롤로 끌어 놓습니다.

    참고 항목

    컨트롤이 디자이너에 표시되지 않으면 솔루션 탐색기에서 HelloControl을 두 번 클릭합니다.

  5. 코드를 단추의 Click 이벤트 처리기에 추가합니다. 다음 예제에서는 Microsoft Office Word 문서용 코드를 보여줍니다.

    private void button1_Click(object sender, System.EventArgs e)
    {
        Globals.ThisDocument.Paragraphs[1].Range.Text = "Hello World!";
    }
    
  6. C#에서는 단추 클릭에 대한 이벤트 처리기를 추가해야 합니다. 이 코드를 HelloControl 생성자에서 InitializeComponent 호출 다음에 배치할 수 있습니다.

    이벤트 처리기를 만드는 방법에 대한 내용은 방법: Office 프로젝트에서 이벤트 처리기 만들기를 참조하세요.

    public HelloControl()
    {
        InitializeComponent();
        this.button1.Click += new EventHandler(this.button1_Click);
    }
    

작업 창에 사용자 정의 컨트롤 추가

작업 창을 표시하려면 ThisDocument.ActionsPane 필드(Word) 또는 ThisWorkbook.ActionsPane 필드(Excel)의 Controls 속성에 사용자 정의 컨트롤을 추가합니다.

작업 창에 사용자 정의 컨트롤을 추가하려면

  1. 클래스 수준 선언으로 ThisDocument 또는 ThisWorkbook 클래스에 다음 코드를 추가합니다. (메서드에 이 코드를 추가하지 마세요.)

    private HelloControl hello = new HelloControl();
    
  2. ThisDocument 클래스의 ThisDocument_Startup 이벤트 처리기 또는 ThisWorkbook 클래스의 ThisWorkbook_Startup 이벤트 처리기에 다음 코드를 추가합니다.

    this.ActionsPane.Controls.Add(hello);