다음을 통해 공유


Office 문서의 Windows Forms 컨트롤 개요

업데이트: 2008년 7월

적용 대상

이 항목의 정보는 지정된 Visual Studio Tools for Office 프로젝트 및 Microsoft Office 버전에만 적용됩니다.

문서 수준 프로젝트

  • Excel 2003

  • Excel 2007

  • Word 2003

  • Word 2007

응용 프로그램 수준 프로젝트

  • Excel 2007

  • Word 2007

자세한 내용은 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

Windows Forms 컨트롤은 사용자가 데이터를 입력하거나 조작하기 위해 상호 작용할 수 있는 개체입니다. Microsoft Office Excel 및 Microsoft Office Word용 문서 수준 프로젝트에서는 디자인 타임에 프로젝트의 문서 또는 통합 문서에 Windows Forms 컨트롤을 추가하거나 런타임에 프로그래밍 방식으로 이러한 컨트롤을 추가할 수 있습니다. Visual Studio 2008 SP1(서비스 팩 1)부터는 런타임에 Excel 2007 또는 Word 2007용 응용 프로그램 수준 추가 기능에서도 열려 있는 문서 또는 워크시트에 이러한 컨트롤을 추가할 수 있습니다.

자세한 내용은 방법: Office 문서에 Windows Forms 컨트롤 추가를 참조하십시오.

Windows Forms 컨트롤 사용

문서와 작업 창(Actions Pane), 사용자 지정 작업 창(Task Pane), Windows Forms 등의 사용자 지정 가능한 UI(사용자 인터페이스) 요소에 Windows Forms 컨트롤을 추가할 수 있습니다. 문서에 배치되는 Windows Forms 컨트롤은 일반적으로 이러한 기타 UI 요소에서와 동일하게 작동하지만 몇 가지 차이는 있습니다. 자세한 내용은 Office 문서에서 Windows Forms 컨트롤에 대한 제한 사항을 참조하십시오.

Windows Forms 컨트롤을 문서에 추가할지 기타 UI 요소에 추가할지를 결정하는 데는 여러 가지 사항을 고려해야 합니다. 솔루션의 UI를 디자인할 때는 다음 표에서와 같이 Windows Forms 컨트롤을 사용하는 것이 좋습니다.

  • 문서에 추가하는 경우

    • 항상 컨트롤을 표시하려는 경우

    • 사용자가 편집 화면이 잠겨 있는 양식 기반 문서와 같은 문서에서 직접 데이터를 입력하도록 하려는 경우

    • 문서에서 컨트롤과 데이터를 정렬하여 표시하려는 경우. 예를 들어, 목록 개체의 각 행에 단추를 추가하려는 경우 각 단추를 목록 항목과 같은 줄에 배치합니다.

  • 작업 창(Actions Pane) 또는 사용자 지정 작업 창(Task Pane)에 추가하는 경우

    • 사용자에게 상황에 맞는 정보를 제공하려는 경우

    • 쿼리 컨트롤과 데이터는 제외하고 결과만 문서에 표시하려는 경우

    • 컨트롤이 문서와 함께 인쇄되지 않도록 하려는 경우

    • 컨트롤이 문서를 보는 데 방해가 되지 않도록 하려는 경우

  • Windows Form에 추가하는 경우

    • UI의 크기를 제어하려는 경우

    • 사용자가 컨트롤을 숨기거나 삭제하지 못하도록 방지하려는 경우

    • 사용자의 입력을 가져오며, 입력을 받을 때까지 사용자가 문서에서 아무런 작업도 수행할 수 없도록 하려는 경우

프로그래밍 방식으로 Windows Forms 컨트롤 추가

런타임에 Word 문서와 Excel 워크시트에 Windows Forms 컨트롤을 추가할 수 있습니다. Visual Studio Tools for Office에서는 대부분의 Windows Forms 컨트롤을 추가하기 위한 도우미 메서드를 제공합니다. 이러한 도우미 메서드를 사용하면 Office 문서에 컨트롤을 빠르게 추가할 수 있고 이러한 컨트롤의 결합된 Windows Forms 컨트롤 기능 및 Office 관련 기능에 액세스할 수 있습니다.

자세한 내용은 런타임에 Office 문서에 컨트롤 추가를 참조하십시오.

문서 수준 프로젝트에서 Windows Forms 컨트롤 사용

문서에 Windows Forms 컨트롤을 사용할 때의 몇 가지 특징은 문서 수준 프로젝트에만 해당되므로 Visual Studio 디자이너를 사용하여 문서의 UI를 디자인할 수 있습니다.

사용자 지정 사용자 정의 컨트롤 만들기

사용자 정의 컨트롤을 프로젝트에 추가한 다음 이를 도구 상자에 추가할 수 있습니다. 그런 다음 Windows Forms 컨트롤을 문서에 추가할 때와 동일한 방식으로 사용자 정의 컨트롤을 문서에 직접 끌어 놓을 수 있습니다. 사용자 정의 컨트롤을 만들 때는 다음 몇 가지 사항에 주의해야 합니다.

  • sealed 사용자 정의 컨트롤을 만들지 마십시오. Visual Studio Tools for Office에서는 사용자 정의 컨트롤에서 파생된 래퍼 클래스를 생성하여 해당 클래스를 확장하고 문서에 사용할 수 있도록 합니다. Visual Studio Tools for Office에서는 sealed 클래스에서 파생 클래스를 만들 수 없습니다.

  • 사용자 정의 컨트롤의 ComVisibleAttribute 특성이 true로 설정되어 있어야 합니다. Visual Studio Tools for Office 프로젝트 내에서 만든 사용자 정의 컨트롤의 경우 이 특성이 기본적으로 true로 설정되어 있지만 프로젝트의 외부에서 만든 사용자 정의 컨트롤은 이 특성이 true로 설정되어 있지 않을 수 있습니다.

  • 사용자 정의 컨트롤을 문서에 추가한 후에는 프로젝트에서 UserControl 클래스를 삭제하거나 이름을 변경하지 말아야 합니다. 사용자 정의 컨트롤의 이름을 변경해야 하는 경우 먼저 문서에서 컨트롤을 삭제한 다음 이름을 변경하고 다시 추가해야 합니다.

디자인 타임에 컨트롤 정렬

디자인 타임에 Word 및 Excel 문서에 여러 개의 컨트롤을 추가할 경우 Visual Studio에서 Microsoft Office WordMicrosoft Office Excel 도구 모음을 사용하여 선택한 모든 컨트롤의 맞춤 방식을 빠르게 설정할 수 있습니다. 이러한 도구 모음은 문서나 워크시트가 디자이너에서 열려 있는 경우에만 사용할 수 있습니다.

디자이너에서 여러 개의 컨트롤을 선택할 경우 이러한 도구 모음에 있는 다음 단추를 사용하여 컨트롤을 정렬할 수 있습니다.

  • 왼쪽 맞춤

  • 가운데 맞춤

  • 오른쪽 맞춤

  • 위쪽 맞춤

  • 중간 맞춤

  • 아래쪽 맞춤

  • 가로 간격 같게

  • 세로 간격 같게

참고:

Word 프로젝트에서 이러한 단추는 선택한 컨트롤이 텍스트 줄 안에 있지 않은 경우에만 사용할 수 있습니다. 기본적으로 디자인 타임에 문서에 추가하는 컨트롤은 텍스트 줄 안에 있습니다. 자세한 내용은 Word 문서에서 Windows Forms 컨트롤 사용을 참조하십시오.

로드하는 동안 이전 데이터가 Excel 통합 문서에 표시되지 않도록 설정

디자인 타임에 문서나 워크시트에 Windows Forms 컨트롤을 추가하면 해당 컨트롤은 사용자가 문서를 닫아도 문서에 유지됩니다. 디자인 타임에 추가된 컨트롤은 정적 컨트롤이라고도 합니다.

정적 컨트롤이 포함된 Excel 통합 문서를 열면 사용자 지정 코드가 실행되어 실제 컨트롤이 로드될 때까지 통합 문서의 ActiveX 컨트롤에 컨트롤의 비트맵이 표시됩니다. Excel에서는 통합 문서를 저장할 때마다 이 비트맵을 만들어 통합 문서에 저장합니다. 비트맵은 컨트롤이 표시하던 데이터를 포함하여 통합 문서를 마지막으로 저장했을 때 나타난 대로 컨트롤을 보여 줍니다. Windows Forms 컨트롤 및 비트맵을 포함하는 ActiveX 컨트롤에 대한 자세한 내용은 Office 문서에서 Windows Forms 컨트롤에 대한 제한 사항을 참조하십시오.

디자인 모드에서 통합 문서를 열 때와 같은 특정 조건에서는 코드가 로드되지 않고 비트맵만 표시됩니다. 또한 Visual Studio Tools for Office 런타임이 설치되어 있지 않은 컴퓨터에서 통합 문서를 여는 경우 컨트롤을 로드하는 사용자 지정이 실행되지 않으므로 컨트롤의 비트맵만 표시됩니다. 개인 정보가 실수로 노출되지 않도록 하려면 통합 문서를 저장하고 다른 사용자에게 보내기 전에 항상 통합 문서의 컨트롤에서 개인 정보를 제거해야 합니다.

디자인 타임에 구성 요소 추가

특정 컨트롤이나 구성 요소는 문서에 표시되지 않는 대신 구성 요소 트레이에 표시됩니다. Visual Studio Tools for Office에서는 각 문서 창에 대한 구성 요소 트레이를 제공합니다. 구성 요소 트레이는 문서에 구성 요소가 있는 경우에만 화면에 나타납니다.

참고 항목

작업

방법: Office 문서에 Windows Forms 컨트롤 추가

방법: 워크시트 셀에서 컨트롤 크기 조정

방법: 인쇄할 때 워크시트에서 컨트롤 숨기기

연습: CheckBox 컨트롤을 사용하여 워크시트 서식 변경

연습: CheckBox 컨트롤을 사용하여 문서 서식 변경

연습: 문서에서 단추를 사용하여 텍스트 상자에 텍스트 표시

연습: 워크시트에서 단추를 사용하여 텍스트 상자에 텍스트 표시

개념

Word 문서에서 Windows Forms 컨트롤 사용

Excel 워크시트에서 Windows Forms 컨트롤 사용

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

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

작업 창 개요

Office 문서에서 Windows Forms 컨트롤에 대한 제한 사항

참조

ControlCollection.Remove

ControlCollection.Remove

기타 리소스

Office 문서의 컨트롤

Windows Forms 컨트롤

변경 기록

날짜

변경 내용

이유

2008년 7월

응용 프로그램 수준 추가 기능을 사용하여 문서에 Windows Forms 컨트롤을 추가하는 방법에 대한 정보가 추가되었습니다.

SP1 기능 변경