컨트롤의 앰비언트 속성

컨트롤이 앰비언트 속성을 전혀 지원하는 경우 적어도 표준 dispids를 사용하여 다음 표에 명시된 조건에서 다음 앰비언트 속성의 값을 준수해야 합니다.

앰비언트 속성 Dispid 사용 설명/조건
LocaleID
-705
로캘이 컨트롤에 중요한 경우(예: 텍스트 출력의 경우)
UserMode
-709
컨트롤이 사용자(디자인) 모드 및 실행 모드에서 다르게 동작하는 경우
UIDead
-710
컨트롤이 UI 이벤트에 반응하는 경우 이 앰비언트 속성을 적용해야 합니다.
ShowGrabHandles
-711
컨트롤이 자체의 현재 위치 크기 조정을 지원하는 경우
ShowHatching
-712
컨트롤이 현재 위치 활성화 및 UI 활성화를 지원하는 경우
DisplayAsDefault
-713
컨트롤이 OLEMISC_ACTSLIKEBUTTON 표시된 경우에만(즉, 키보드 니모닉에 대한 지원이 제공되므로 IOleControl::GetControlInfoIOleControl::OnMnemonic 을 구현해야 합니다).

앞에서 설명한 대로 앰비언트를 사용하려면 IOleControl ( OnAmbientPropertyChange 의 경우 최소)과 IOleObject ( SetClientSiteGetClientSite의 경우)가 모두 필요합니다.

OLEMISC_SETCLIENTSITEFIRST 비트는 반드시 컨테이너에서 지원되지 않을 수 있습니다. 이러한 경우 컨트롤은 필요한 앰비언트 속성의 기본값에 의존해야 합니다.

컨트롤