ControlStyles 列挙体
この列挙体には、メンバ値のビットごとの組み合わせを可能にする FlagsAttribute 属性が含まれています。
名前空間: System.Windows.Formsアセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

<FlagsAttribute> _ Public Enumeration ControlStyles


コントロールは、さまざまなプロパティやメソッドでこの列挙体を使用して、機能を指定します。コントロールは SetStyle メソッドを呼び出して、適切な ControlStyles ビットと、ビットを設定する Boolean 値を渡すことによって、スタイルを有効にすることができます。たとえば、Visual Basic の次のコード行はダブル バッファリングを有効にします。
myControl.SetStyle(UserPaint Or AllPaintingInWmPaint Or DoubleBuffer, True)
AllPaintingInWmPaint ビットが true に設定されている場合、ウィンドウ メッセージ WM_ERASEBKGND は無視され、OnPaintBackground メソッドと OnPaint メソッドの両方が、ウィンドウ メッセージ WM_PAINT から直接呼び出されます。通常はこの動作によって、ほかのコントロールがウィンドウ メッセージ WM_ERASEBKGND をコントロールに送信しない限り、ちらつきを抑えることができます。ウィンドウ メッセージ WM_ERASEBKGRND を送信すると、SupportsTransparentBackColor を使用した場合と同じような透明効果をシミュレートできます。たとえば、フラットな外観を設定した ToolBar に、この効果を適用できます。
ダブル バッファリングを完全に有効にするには、OptimizedDoubleBuffer ビットおよび AllPaintingInWmPaint ビットを true に設定する必要があります。ただし、コントロールの DoubleBuffered プロパティを true にしても同じ結果を得ることができます。ダブル バッファリングを有効する方法としては、こちらをお勧めします。
SupportsTransparentBackColor ビットが true に設定され、BackColor にアルファ値が 255 未満の色が設定されている場合、OnPaintBackground は、親コントロールに背景を描画させることによって透明効果をシミュレートします。これによって実現される透明度は、実際の透明ではありません。
![]() |
---|
コントロールと親コントロールの間に別のコントロールがある場合、現在のコントロールには、間にあるコントロールが表示されません。 |
UserMouse ビットが true に設定されている場合は、Control.OnMouseDown メソッド、Control.OnMouseUp メソッド、Control.OnMouseEnter メソッド、Control.OnMouseMove メソッド、Control.OnMouseHover メソッド、Control.OnMouseLeave メソッド、および Control.OnMouseWheel メソッドが引き続き呼び出されます。
StandardClick ビットが true に設定されている場合は、コントロールがクリックされると、Control.OnClick メソッドが呼び出され、Control.Click イベントを発生させます。StandardClick ビットと StandardDoubleClick ビットの両方が true に設定されている場合は、コントロールがダブルクリックされると、そのクリックは DoubleClick イベントに渡されます。次に Control.OnDoubleClick メソッドが呼び出され、Control.DoubleClick イベントを発生させます。ただし、StandardClick ビットおよび StandardDoubleClick ビットの値に関係なく、そのコントロールは OnClick または OnDoubleClick を直接呼び出すことができます。クリック動作およびダブルクリック動作の詳細については、Control.Click および Control.DoubleClick のトピックを参照してください。
UseTextForAccessibility ビットが設定され、コントロールの Text プロパティに値が設定されている場合、そのコントロールの Text プロパティの値でコントロールの既定の Active Accessibility 名とショートカット キーが決定されます。それ以外の場合は、代わりに直前の Label コントロールのテキストが使用されます。既定では、このスタイルが設定されています。TextBox や ComboBox など、特定の種類の組み込みコントロールでは、これらのコントロールの Text プロパティが Active Accessibility に使用されないように、このスタイルが再設定されます。
継承時の注意 標準の Windows フォーム コントロールから継承し、StandardClick ビット値または StandardDoubleClick ビット値を true に変更すると、コントロールが Click イベントまたは DoubleClick イベントをサポートしていない場合は、予測できない動作が行われたり、何の効果も得られなかったりします。
ControlStyles を StyleChanged イベントと共に使用する例を次に示します。
' 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
// 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"); }
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" ); }

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からControlStyles 列挙体を検索する場合は、下記のリンクをクリックしてください。

- ControlStyles 列挙体のページへのリンク