Share via


.NET Framework 2.0에서 디자인 타임 지원의 새로운 기능

.NET Framework 2.0에서는 .NET Framework 1.1에 없던 새로운 기능이 추가되고 기존 기능이 개선되었으며 디자인 타임 개발도 향상되었습니다. 이 항목에서는 새 디자이너 기능에 대해 요약합니다.

도구 상자 향상

이제 Visual Studio의 도구 상자에서는 구성 요소와 컨트롤이 범주로 구성됩니다. 또한 프로젝트의 구성 요소와 컨트롤이 자동으로 채워집니다.  

DesignerAction 지원

DesignerAction 기능을 사용하면 구성 요소와 컨트롤에서 상황에 맞는 정보와 명령을 표시할 수 있습니다. DesignerAction 기능은 디자이너 동사의 대체 기능으로 볼 수 있는데, DesignerActionItem은 스마트 태그 패널뿐 아니라 구성 요소나 컨트롤과 관련된 바로 가기 메뉴에도 표시될 수 있기 때문입니다. DesignerActionList 클래스는 스마트 태그 지원을 사용자 지정 구성 요소와 컨트롤에 추가하려는 개발자를 위한 주요 상호 작용 지점입니다. 자세한 내용은 방법: Windows Forms 구성 요소에 스마트 태그 연결을 참조하십시오.

Wondows Forms에 대한 디자이너 레이아웃 지원

런타임 및 다자인 환경에 대한 레이아웃 지원이 향상되었습니다.

디자인 환경

Windows Forms 컨트롤에서는 폼에서 컨트롤의 맞춤을 쉽게 수행할 수 있게 하는 맞춤선을 지원합니다. SnapLine 클래스는 맞춤선을 사용하여 사용자 지정 컨트롤을 확장할 수 있는 구현을 제공합니다.

자세한 내용은 다음을 참조하십시오. 연습: 맞춤선을 사용하여 Windows Forms에서 컨트롤 정렬연습: 맞춤선을 사용하여 Windows Forms에서 컨트롤 정렬연습: 맞춤선을 사용하여 Windows Forms에서 컨트롤 정렬연습: 맞춤선을 사용하여 Windows Forms에서 컨트롤 정렬..

런타임

TableLayoutPanelFlowLayoutPanel은 비례 크기 조정과 동적 레이아웃 기능이 필요한 시나리오를 적용 가능하게 하는 두 가지 새로운 Windows Forms 컨트롤입니다. 자세한 내용은 TableLayoutPanel 컨트롤(Windows Forms)FlowLayoutPanel 컨트롤(Windows Forms)을 참조하십시오.

Control.LayoutEngine 속성과 LayoutEngine 클래스를 사용하여 사용자 지정 레이아웃 동작을 구현할 수 있습니다. 자세한 내용은 방법: 사용자 지정 레이아웃 엔진 구현을 참조하십시오.

기본 인터페이스 구현

이제 디자이너 인프라를 지정하는 많은 인터페이스에는 확장할 수 있는 기본 구현이 포함되어 있습니다. 다음 표에서는 기본 클래스와 해당 기본 구현의 목록을 보여 줍니다.

기본 클래스

Implements

BasicDesignerLoader

IDesignerLoaderService

CodeDomDesignerLoader

IDesignerSerializationService

CustomTypeDescriptor

ICustomTypeDescriptor

DesignerSerializationManager

IDesignerSerializationManager

NestedContainer

INestedContainer

ToolboxService

IToolboxService

디자이너 기본 클래스 구현

다음 표에서는 디자이너 인프라를 구현하는 사용 및 확장이 가능한 클래스를 보여 줍니다.

기본 클래스

설명

CodeDomSerializerBase

CodeDomSerializer 클래스에 대한 기본 클래스를 제공합니다.

ComponentSerializationService

구성 요소 집합 또는 serialize할 수 있는 개체를 serialization 저장소로 serialize합니다.

ContainerFilterService

컨테이너 필터 서비스에 대한 기본 클래스를 제공합니다.

TypeDescriptionProvider

TypeDescriptor에 추가 메타데이터를 제공합니다.

디자이너 서비스

디자이너 인프라는 확장된 디자이너 서비스 집합을 제공하여 고객에게 풍부한 디자인 환경을 제공할 수 있도록 도와줍니다. 자세한 내용은 디자인 타임 아키텍처를 참조하십시오.

Windows Forms에 대한 디자이너 모양 및 동작 팩터링

.NET Framework의 이전 버전에서는 사용자 지정 Windows Forms 디자이너에 마우스 조작과 키보드 조작 논리가 모두 포함되었습니다. 새 Glyph, BehaviorAdorner 클래스를 사용하면 사용자의 모양과 동작 코드를 전용 사용자 지정 형식으로 리팩터링할 수 있습니다. 자세한 내용은 방법: 디자인 모드에서 컨트롤의 모양과 동작 확장을 참조하십시오.

TypeDescriptor 확장

TypeDescriptionProvider 클래스는 TypeDescriptor 클래스의 확장성을 구현합니다. 이 클래스를 사용하면 인스턴스 대체, 메타데이터 대체, 특성 리디렉션, 대상 대체와 숨김 등을 포함하는 많은 고급 시나리오를 적용할 수 있습니다.

자세한 내용은 형식 설명자 개요를 참조하십시오.

일반 실행 취소/다시 실행 지원

UndoEngine 클래스에서는 구성 요소의 속성 값 변경에 대한 일반적인 실행 취소/다시 실행을 지원합니다. DesignerTransaction 클래스를 사용하면 커밋하거나 롤백할 수 있는 불연속적인 작업 단위를 트랜잭션 처리할 수 있습니다. 구성 요소를 여러 번 연속해서 변경한 다음 모든 변경 내용을 한 번에 적용하거나 취소할 수 있습니다.

코드 예제

이제 Windows SDK(소프트웨어 개발 키트)에는 사용자 지정 디자이너 개발 과정을 보여 주는 많은 코드 예제가 포함되어 있습니다. 자세한 내용은 구성 요소 프로그래밍 방법 및 연습 항목디자인 타임 지원 확장 방법 및 연습 항목을 참조하십시오.

Topic Location
디자인할 때 Windows Forms 컨트롤 개발 Windows Forms Controls
디자인할 때 Windows Forms 컨트롤 개발 Windows Forms Controls
디자인할 때 Windows Forms 컨트롤 개발 Windows Forms 컨트롤
디자인할 때 Windows Forms 컨트롤 개발 dv_mclictl

참고 항목

기타 리소스

디자인 타임 지원 확장

사용자 지정 디자이너