NestedContainer NestedContainer NestedContainer NestedContainer Class

정의

컨테이너에 소유 구성 요소가 포함될 수 있도록 하는 INestedContainer 인터페이스에 대한 기본 구현을 제공합니다.Provides the base implementation for the INestedContainer interface, which enables containers to have an owning component.

public ref class NestedContainer : System::ComponentModel::Container, IDisposable, System::ComponentModel::INestedContainer
public class NestedContainer : System.ComponentModel.Container, IDisposable, System.ComponentModel.INestedContainer
type NestedContainer = class
    inherit Container
    interface INestedContainer
    interface IContainer
    interface IDisposable
Public Class NestedContainer
Inherits Container
Implements IDisposable, INestedContainer
상속
NestedContainerNestedContainerNestedContainerNestedContainer
구현

설명

합니다 NestedContainer 클래스의 간단한 구현을는 INestedContainer 논리적으로 다른 구성 요소를 0 개 이상 포함 하 고 부모 구성 요소에서 소유 하는 구성 요소를 정의 하는 인터페이스입니다.The NestedContainer class is a simple implementation of the INestedContainer interface, which defines a component that logically contains zero or more other components and is owned by a parent component. 표준에서 중첩 된 컨테이너의 동작은 다릅니다 Container 다음을 비롯 한 여러 가지 면에서:The behavior of nested containers differs from a standard Container in a number of ways, including the following:

  • 와 같은 사이트 특성 DesignModeGetService 소유 구성 요소의 사이트를 통해 라우팅됩니다.Site characteristics such as DesignMode and GetService are routed through the owning component's site.

  • 사이트의 Name 속성이 소유 구성 요소의 이름 뒤에 마침표 (.) 및 하위 구성 요소의 이름을 포함 하는 정규화 된 이름입니다.The site's Name property is a qualified name that includes the owning component's name followed by a period (.) and the child component's name.

  • GetService 에 대 한 지원을 제공 합니다 INestedContainer 서비스로 합니다.GetService provides support for the INestedContainer as a service.

  • 해당 구성 요소가 삭제 될 때 컨테이너도 삭제 됩니다.When the owning component is disposed, the container is disposed as well.

또한 디자이너는 다르게 중첩 된 컨테이너 처리합니다.In addition, designers treat nested containers differently. 디자이너 호스트는 호스트와 연결 된 하나의 컨테이너에만 관심이 있습니다.A designer host is only interested in one container - the one associated with the host. 구성 요소 추가 및 이벤트를 제거 합니다. 따라서 구성 요소를 추가 하거나 중첩 된 컨테이너에서 제거할 때 발생 하지 않습니다.Therefore, component add and remove events are not raised when a component is added to or removed from a nested container. 그러나 중첩 된 컨테이너에 서비스를 통해 흐름을 하기 때문에 구성 요소 변경 이벤트가 중첩된 컨테이너의 구성 요소 변경 될 때입니다.However, because services flow through to the nested container, component change events are raised when a component in a nested container is changed.

이벤트 추적에이 차이로 인해 serialization에 밀접 하 게 연결 되어 있는 실행 취소 기능에도 영향을 줍니다.This disparity in event tracking also impacts undo functionality, which is closely tied to serialization. 표준 실행 취소 엔진 사용 IReferenceService 구성 요소에 대 한 변경 내용을 추적 합니다.The standard undo engine uses IReferenceService to track changes made to components. 실행 취소 엔진 참조 서비스를 통해 구성 요소의 이름을 식별할 수 없으면 해당 구성 요소에 대 한 변경 내용을 무시 합니다.If the undo engine cannot identify a name for a component through the reference service, the engine will ignore any changes for that component. 이 서비스는 해당 소유자에 동일한 이름의 공용 읽기 전용 속성으로 노출 되는 경우에 자동으로 포함 된 구성 요소의 변경 내용을 인식 합니다.This service automatically recognizes changes to contained components only if they are exposed as public read-only properties of the same name in their owners. 그렇지 않은 경우 개발자 소유자 구성 요소 변경 이벤트를 전달 해야 합니다.Otherwise, the developer must pass component change events up to the owner. 예를 들어 중첩 된 구성 요소의 Text 속성으로 소유 구성 요소에서 다시 표시 되는 Address 속성, 합니다 Text 속성이 변경 될, 해당 속성 변경이 프로그래밍 방식으로 이루어져야 합니다 Address 속성 또는 그렇지 않으면 해당 변경 내용을 실행 취소에 의해 추적 되지 않습니다.For example, if a nested component's Text property is resurfaced on its owning component as an Address property, when the Text property is changed, a property change must be programmatically made for the corresponding Address property or else that change will not be tracked by undo.

생성자

NestedContainer(IComponent) NestedContainer(IComponent) NestedContainer(IComponent) NestedContainer(IComponent)

NestedContainer 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the NestedContainer class.

속성

Components Components Components Components

Container의 모든 구성 요소를 가져옵니다.Gets all the components in the Container.

(Inherited from Container)
Owner Owner Owner Owner

이 중첩 컨테이너의 소유 구성 요소를 가져옵니다.Gets the owning component for this nested container.

OwnerName OwnerName OwnerName OwnerName

소유 구성 요소의 이름을 가져옵니다.Gets the name of the owning component.

메서드

Add(IComponent) Add(IComponent) Add(IComponent) Add(IComponent)

지정된 ComponentContainer에 추가합니다.Adds the specified Component to the Container. 이름이 지정되지 않은 구성 요소입니다.The component is unnamed.

(Inherited from Container)
Add(IComponent, String) Add(IComponent, String) Add(IComponent, String) Add(IComponent, String)

지정된 ComponentContainer에 추가하고 이름을 지정합니다.Adds the specified Component to the Container and assigns it a name.

(Inherited from Container)
CreateSite(IComponent, String) CreateSite(IComponent, String) CreateSite(IComponent, String) CreateSite(IComponent, String)

컨테이너에서 구성 요소에 대한 사이트를 만듭니다.Creates a site for the component within the container.

Dispose() Dispose() Dispose() Dispose()

Container에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the Container.

(Inherited from Container)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

중첩 컨테이너에서 사용하는 리소스를 해제합니다.Releases the resources used by the nested container.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

가능한 경우, 지정된 형식의 서비스 개체를 가져옵니다.Gets the service object of the specified type, if it is available.

GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
Remove(IComponent) Remove(IComponent) Remove(IComponent) Remove(IComponent)

Container에서 구성 요소를 제거합니다.Removes a component from the Container.

(Inherited from Container)
RemoveWithoutUnsiting(IComponent) RemoveWithoutUnsiting(IComponent) RemoveWithoutUnsiting(IComponent) RemoveWithoutUnsiting(IComponent)

Containernull로 설정하지 않고 Site에서 구성 요소를 제거합니다.Removes a component from the Container without setting Site to null.

(Inherited from Container)
ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)
ValidateName(IComponent, String) ValidateName(IComponent, String) ValidateName(IComponent, String) ValidateName(IComponent, String)

구성 요소 이름이 이 컨테이너에서 고유한지 여부를 확인합니다.Determines whether the component name is unique for this container.

(Inherited from Container)

적용 대상

추가 정보