ControlStyles ControlStyles ControlStyles ControlStyles Enum

정의

컨트롤의 스타일 및 동작을 지정합니다.Specifies the style and behavior of a control.

이 열거형에는 멤버 값의 비트 조합을 허용하는 FlagsAttribute 특성이 있습니다.

public enum class ControlStyles
[System.Flags]
public enum ControlStyles
type ControlStyles = 
Public Enum ControlStyles
상속
ControlStylesControlStylesControlStylesControlStyles
특성

필드

AllPaintingInWmPaint AllPaintingInWmPaint AllPaintingInWmPaint AllPaintingInWmPaint 8192

true이면 컨트롤은 깜빡임을 줄이기 위해 WM_ERASEBKGND 창 메시지를 무시합니다.If true, the control ignores the window message WM_ERASEBKGND to reduce flicker. 이 스타일은 UserPaint 비트가 true로 설정된 경우에만 적용되어야 합니다.This style should only be applied if the UserPaint bit is set to true.

CacheText CacheText CacheText CacheText 16384

true이면 컨트롤은 필요할 때마다 Handle에서 텍스트를 가져오지 않고 텍스트 복사본을 유지합니다.If true, the control keeps a copy of the text rather than getting it from the Handle each time it is needed. 이 스타일의 기본값은 false입니다.This style defaults to false. 이 동작에 의해 성능은 향상되지만 텍스트를 동기화 상태로 유지하기가 어렵습니다.This behavior improves performance, but makes it difficult to keep the text synchronized.

ContainerControl ContainerControl ContainerControl ContainerControl 1

true이면 컨트롤이 컨테이너와 유사한 컨트롤입니다.If true, the control is a container-like control.

DoubleBuffer DoubleBuffer DoubleBuffer DoubleBuffer 65536

true이면 그리기가 버퍼에서 수행되고 완료된 후에 결과가 화면에 출력됩니다.If true, drawing is performed in a buffer, and after it completes, the result is output to the screen. 이중 버퍼링은 컨트롤을 다시 그릴 때 발생하는 깜박임을 방지합니다.Double-buffering prevents flicker caused by the redrawing of the control. DoubleBuffertrue로 설정한 경우 UserPaintAllPaintingInWmPainttrue로 설정해야 합니다.If you set DoubleBuffer to true, you should also set UserPaint and AllPaintingInWmPaint to true.

EnableNotifyMessage EnableNotifyMessage EnableNotifyMessage EnableNotifyMessage 32768

true이면 WndProc(Message)로 전송되는 모든 메시지에 대해 OnNotifyMessage(Message) 메서드가 호출됩니다.If true, the OnNotifyMessage(Message) method is called for every message sent to the control's WndProc(Message). 이 스타일의 기본값은 false입니다.This style defaults to false. EnableNotifyMessage는 부분 신뢰 환경에서 작동하지 않습니다.EnableNotifyMessage does not work in partial trust.

FixedHeight FixedHeight FixedHeight FixedHeight 64

true이면 컨트롤은 자동으로 크기가 조정될 때 높이가 고정됩니다.If true, the control has a fixed height when auto-scaled. 예를 들어 레이아웃 작업이 새 Font를 수용하도록 컨트롤의 크기를 변경하려고 할 경우 컨트롤의 Height는 그대로 유지됩니다.For example, if a layout operation attempts to rescale the control to accommodate a new Font, the control's Height remains unchanged.

FixedWidth FixedWidth FixedWidth FixedWidth 32

true이면 컨트롤은 자동으로 크기가 조정될 때 너비가 고정됩니다.If true, the control has a fixed width when auto-scaled. 예를 들어 레이아웃 작업이 새 Font를 수용하도록 컨트롤의 크기를 변경하려고 할 경우 컨트롤의 Width는 그대로 유지됩니다.For example, if a layout operation attempts to rescale the control to accommodate a new Font, the control's Width remains unchanged.

Opaque Opaque Opaque Opaque 4

true이면 컨트롤은 불투명하게 그려지고 배경은 그려지지 않습니다.If true, the control is drawn opaque and the background is not painted.

OptimizedDoubleBuffer OptimizedDoubleBuffer OptimizedDoubleBuffer OptimizedDoubleBuffer 131072

true이면 컨트롤은 화면에 직접 그려지지 않고 먼저 버퍼에 그려지므로 깜빡임을 줄일 수 있습니다.If true, the control is first drawn to a buffer rather than directly to the screen, which can reduce flicker. 이 속성을 true로 설정하는 경우 AllPaintingInWmPainttrue로 설정해야 합니다.If you set this property to true, you should also set the AllPaintingInWmPaint to true.

ResizeRedraw ResizeRedraw ResizeRedraw ResizeRedraw 16

true이면 컨트롤은 크기가 조정될 때 다시 그려집니다.If true, the control is redrawn when it is resized.

Selectable Selectable Selectable Selectable 512

true이면 컨트롤이 포커스를 받을 수 있습니다.If true, the control can receive focus.

StandardClick StandardClick StandardClick StandardClick 256

true이면 컨트롤은 표준 Click 동작을 구현합니다.If true, the control implements the standard Click behavior.

StandardDoubleClick StandardDoubleClick StandardDoubleClick StandardDoubleClick 4096

true이면 컨트롤은 표준 DoubleClick 동작을 구현합니다.If true, the control implements the standard DoubleClick behavior. 이 스타일은 StandardClick 비트가 true로 설정되지 않으면 무시됩니다.This style is ignored if the StandardClick bit is not set to true.

SupportsTransparentBackColor SupportsTransparentBackColor SupportsTransparentBackColor SupportsTransparentBackColor 2048

true이면 컨트롤은 투명도를 시뮬레이트하기 위해 알파 구성 요소가 255 미만인 BackColor를 수락합니다.If true, the control accepts a BackColor with an alpha component of less than 255 to simulate transparency. UserPaint 비트가 true로 설정되고 부모 컨트롤이 Control에서 파생될 경우에만 투명도가 시뮬레이트됩니다.Transparency will be simulated only if the UserPaint bit is set to true and the parent control is derived from Control.

UserMouse UserMouse UserMouse UserMouse 1024

true이면 컨트롤은 자체 마우스 처리를 수행하고 마우스 이벤트가 운영 체제에 의해 처리되지 않습니다.If true, the control does its own mouse processing, and mouse events are not handled by the operating system.

UserPaint UserPaint UserPaint UserPaint 2

true이면 운영 체제에서 컨트롤을 그리지 않고 컨트롤이 자체적으로 그려집니다.If true, the control paints itself rather than the operating system doing so. false이면 Paint 이벤트가 발생하지 않습니다.If false, the Paint event is not raised. 이 스타일은 Control에서 파생된 클래스에만 적용됩니다.This style only applies to classes derived from Control.

UseTextForAccessibility UseTextForAccessibility UseTextForAccessibility UseTextForAccessibility 262144

컨트롤의 Text 속성 값을 설정한 경우 컨트롤의 기본 Active Accessibility 이름 및 바로 가기 키를 결정한다고 지정합니다.Specifies that the value of the control's Text property, if set, determines the control's default Active Accessibility name and shortcut key.

예제

다음 예제를 사용 하는 방법을 보여 줍니다 ControlStyles 사용 하 여는 StyleChanged 이벤트입니다.The following example demonstrates a use of ControlStyles with the StyleChanged event.

private:
   // Set the 'FixedHeight' and 'FixedWidth' styles to false.
   void MyForm_Load( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      this->SetStyle( ControlStyles::FixedHeight, false );
      this->SetStyle( ControlStyles::FixedWidth, false );
   }

   void RegisterEventHandler()
   {
      this->StyleChanged += gcnew EventHandler( this, &MyForm::MyForm_StyleChanged );
   }

   // Handle the 'StyleChanged' event for the 'Form'.
   void MyForm_StyleChanged( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      MessageBox::Show( "The style releated to the 'Form' has been changed" );
   }
// Set the 'FixedHeight' and 'FixedWidth' styles to false.
private void MyForm_Load(object sender, EventArgs e)
{
   this.SetStyle(ControlStyles.FixedHeight, false);
   this.SetStyle(ControlStyles.FixedWidth, false);
}

private void RegisterEventHandler()
{
   this.StyleChanged += new EventHandler(MyForm_StyleChanged);
}

// Handle the 'StyleChanged' event for the 'Form'.
private void MyForm_StyleChanged(object sender, EventArgs e)
{
   MessageBox.Show("The style releated to the 'Form' has been changed");
}
' Set the 'FixedHeight' and 'FixedWidth' styles to false.
Private Sub MyForm_Load(sender As Object, e As EventArgs)
   Me.SetStyle(ControlStyles.FixedHeight, False)
   Me.SetStyle(ControlStyles.FixedWidth, False)
End Sub 'MyForm_Load

Private Sub RegisterEventHandler()
   AddHandler Me.StyleChanged, AddressOf MyForm_StyleChanged
End Sub 'RegisterEventHandler

' Handle the 'StyleChanged' event for the 'Form'.
Private Sub MyForm_StyleChanged(sender As Object, e As EventArgs)
   MessageBox.Show("The style releated to the 'Form' has been changed")
End Sub 'MyForm_StyleChanged

설명

컨트롤 기능을 지정이 열거형에 다양 한 속성 및 메서드를 사용 합니다.Controls use this enumeration in various properties and methods to specify functionality. 컨트롤을 호출 하 여 스타일을 설정할 수 있습니다.는 SetStyle 메서드와 해당 전달 ControlStyles 비트 (또는 비트) 및 비트가 설정 되도록는 부울 값입니다.A control can enable a style by calling the SetStyle method and passing in the appropriate ControlStyles bit (or bits) and the Boolean value to set the bit(s) to. 예를 들어, Visual Basic 코드의 다음 줄은 이중 버퍼링을 사용 합니다.For example, the following line of Visual Basic code would enable double-buffering.

myControl.SetStyle(UserPaint Or AllPaintingInWmPaint Or DoubleBuffer, True)  

AllPaintingInWmPaint 비트 설정 된 경우 true, WM_ERASEBKGND가 무시 되는 창 메시지와 OnPaintBackgroundOnPaint WM_PAINT 창 메시지에서 직접 메서드 호출 됩니다.If the AllPaintingInWmPaint bit is set to true, the window message WM_ERASEBKGND is ignored, and both OnPaintBackground and OnPaint methods are called directly from the window message WM_PAINT. 이 일반적으로 다른 컨트롤과 컨트롤에 WM_ERASEBKGND 창 메시지를 전송 하지 않는 한 깜박임을 줄입니다.This generally reduces flicker unless other controls send the window message WM_ERASEBKGND to the control. SupportsTransparentBackColor; 비슷합니다 의사 (pseudo) 투명 효과 달성 하기 위해 WM_ERASEBKGRND 창 메시지를 보낼 수 있습니다. 예를 들어, 한 ToolBar 평면 모양으로 표시를 사용 하 여이 작업을 수행 합니다.You might send the window message WM_ERASEBKGRND to achieve a pseudo-transparent effect similar to SupportsTransparentBackColor; for example, a ToolBar with flat appearance does this.

이중 버퍼링를 완전히 활성화 하려면 OptimizedDoubleBuffer 및 AllPaintingInWmPaint 비트를 설정할 수 있습니다 true합니다.To fully enable double-buffering, you can set the OptimizedDoubleBuffer and AllPaintingInWmPaint bits to true. 그러나는 이중 버퍼링을 사용 하도록 설정 하는 것에 대 한 동일한 결과 생성 하는 것이 좋습니다 설정 하는 DoubleBuffered 컨트롤에 대 한 속성 true합니다.However the preferred method for enabling double buffering, which yields the same result, is to set the DoubleBuffered property for the control to true.

SupportsTransparentBackColor 비트 설정 된 경우 true, 및 BackColor 알파 구성 요소가 255 미만인 색으로 설정 되어 OnPaintBackground 배경을 그릴 부모 컨트롤을 요청 하 여 투명도 시뮬레이션 합니다.If the SupportsTransparentBackColor bit is set to true, and the BackColor is set to a color whose alpha component is less than 255, OnPaintBackground will simulate transparency by asking its parent control to paint the background. 진정한 투명성 아닙니다.This is not true transparency.

참고

부모 컨트롤 간의 다른 컨트롤의 경우 현재 컨트롤은 컨트롤 가운데에 표시 되지 않습니다.If there is another control between the control and its parent, the current control will not show the control in the middle.

UserMouse 비트로 설정 되 면 true, 다음 메서드는 계속 호출: Control.OnMouseDown, Control.OnMouseUp, Control.OnMouseEnterControl.OnMouseMoveControl.OnMouseHover, Control.OnMouseLeave, 및 Control.OnMouseWheel합니다.When the UserMouse bit is set to true, the following methods are still called: Control.OnMouseDown, Control.OnMouseUp, Control.OnMouseEnter, Control.OnMouseMove, Control.OnMouseHover, Control.OnMouseLeave, and Control.OnMouseWheel.

컨트롤을 클릭할 시키려면 비트 설정 된 경우 경우 trueControl.OnClick 메서드가 호출 되 고 발생을 Control.Click 이벤트.When the control is clicked, if the StandardClick bit is set to true the Control.OnClick method is called and it raises the Control.Click event. 컨트롤을 두 번 클릭, 시간과 시키려면와 StandardDoubleClick 비트가 설정 되어 true, 클릭에 전달 되는 DoubleClick 이벤트.When the control is double-clicked, and both the StandardClick and StandardDoubleClick bits are set to true, the click is passed on to the DoubleClick event. 그런 다음 Control.OnDoubleClick 메서드가 호출 되 고 발생 된 Control.DoubleClick 이벤트입니다.Then the Control.OnDoubleClick method is called and it raises the Control.DoubleClick event. 그러나 컨트롤을 호출할 수 OnClick 또는 OnDoubleClick 직접 시키려면 및 StandardDoubleClick에 관계 없이 비트 값입니다.However, the control can call OnClick or OnDoubleClick directly regardless of the StandardClick and StandardDoubleClick bit values. 컨트롤에 대 한 자세한 내용은 클릭 고 두 번 클릭 동작을 표시 합니다 Control.ClickControl.DoubleClick 항목입니다.For more information on control click and double click behaviors, see the Control.Click and Control.DoubleClick topics.

UseTextForAccessibility 비트가 설정 된 컨트롤의 값이 있는 시점과 Text 속성을 제어 하는 값 Text 속성 컨트롤의 기본 Active Accessibility 이름 및 바로 가기 키를 결정 합니다.When the UseTextForAccessibility bit is set and there is a value in the control's Text property, the value of that control's Text property determines the control's default Active Accessibility name and shortcut key. 그렇지 않으면 이전 텍스트 Label 컨트롤 대신 사용 됩니다.Otherwise, the text of the preceding Label control will be used instead. 이 스타일은 기본적으로 설정 됩니다.This style is set by default. 등의 특정 기본 제공 컨트롤 형식은 TextBoxComboBox,이 스타일을 다시 설정 되도록는 Text Active Accessibility 하 여 해당 컨트롤의 속성이 사용 되지 것입니다.Certain built-in control types, such as TextBox and ComboBox, reset this style so that the Text property of those controls will not be used by Active Accessibility.

적용 대상

추가 정보