Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

ControlStyles-Enumeration

 

Veröffentlicht: Juli 2016

Gibt den Stil und das Verhalten eines Steuerelements an.

Diese Enumeration verfügt über ein FlagsAttribute-Attribut, das eine bitweise Kombination der Memberwerte zulässt.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

[FlagsAttribute]
public enum ControlStyles

MembernameBeschreibung
AllPaintingInWmPaint

Wenn true, ignoriert das Steuerelement die Fensternachricht WM_ERASEBKGND, um Flimmern zu verringern. Dieses Format sollte nur angewendet werden, wenn das UserPaint-Bit auf true festgelegt ist.

CacheText

Wenn true, behält das Steuerelement eine Kopie des Texts bei, anstatt ihn bei Bedarf jeweils vom Handle abzurufen. Dieses Format hat den Standardwert false. Dieses Verhalten verbessert die Leistung, macht es jedoch schwierig, den Text synchronisiert zu halten.

ContainerControl

Wenn true, ist das Steuerelement ein containerähnliches Steuerelement.

DoubleBuffer

Wenn true, wird das Zeichnen in einem Puffer ausgeführt, und nachdem der Vorgang abgeschlossen ist, wird das Ergebnis auf dem Bildschirm ausgegeben. Doppelte Pufferung verhindert durch das Neuzeichnen des Steuerelements verursachtes Flimmern. Wenn Sie DoubleBuffer auf true festlegen, sollten Sie auch UserPaint und AllPaintingInWmPaint auf true festlegen.

EnableNotifyMessage

Wenn true, wird die OnNotifyMessage-Methode für jede Nachricht an die WndProc des Steuerelements gesendet. Dieses Format hat den Standardwert false. EnableNotifyMessage funktioniert nicht unter teilweiser Vertrauenswürdigkeit.

FixedHeight

Wenn true, hat das Steuerelement eine feste Höhe, wenn es automatisch skaliert wird. Wenn z.B. ein Layoutvorgang versucht, das Steuerelement zur Anpassung an eine neue Font neu zu skalieren, bleibt die Height des Steuerelements unverändert.

FixedWidth

Wenn true, hat das Steuerelement eine feste Breite, wenn es automatisch skaliert wird. Wenn z.B. ein Layoutvorgang versucht, das Steuerelement zur Anpassung an eine neue Font neu zu skalieren, bleibt die Width des Steuerelements unverändert.

Opaque

Wenn true, wird das Steuerelement nicht transparent und der Hintergrund gar nicht gezeichnet.

OptimizedDoubleBuffer

Wenn true, wird das Steuerelement zuerst in einen Puffer gezeichnet anstatt direkt auf den Bildschirm, weil so das Flimmern verringert werden kann. Wenn Sie diese Eigenschaft auf true festlegen, sollten Sie auch AllPaintingInWmPaint auf true festlegen.

ResizeRedraw

Wenn true, wird das Steuerelement neu gezeichnet, wenn seine Größe geändert wird.

Selectable

Wenn true, kann das Steuerelement den Fokus erhalten.

StandardClick

Wenn true, implementiert das Steuerelement das standardmäßige Click-Verhalten.

StandardDoubleClick

Wenn true, implementiert das Steuerelement das standardmäßige DoubleClick-Verhalten. Dieses Format wird ignoriert, wenn das StandardClick-Bit nicht auf true festgelegt ist.

SupportsTransparentBackColor

Wenn true, akzeptiert das Steuerelement eine BackColor mit einer Alphakomponente, die kleiner als 255 ist, um Transparenz zu simulieren. Transparenz wird nur simuliert, wenn das UserPaint-Bit auf true festgelegt und das übergeordnete Steuerelement von Control abgeleitet wird.

UserMouse

Wenn true, führt das Steuerelement seine eigene Mausverarbeitung durch, und Mausereignisse werden nicht vom Betriebssystem behandelt.

UserPaint

Wenn true, zeichnet sich das Steuerelement selbst, anstatt vom Betriebssystem gezeichnet zu werden. Wenn false, wird das Paint-Ereignis nicht ausgelöst. Dieses Format gilt nur für Klassen, die von Control abgeleitet sind.

UseTextForAccessibility

Gibt an, dass der Wert der Text-Eigenschaft des Steuerelements, wenn festgelegt, den standardmäßigen Active Accessibility-Namen und die Tastenkombination des Steuerelements bestimmt.

Controls use this enumeration in various properties and methods to specify functionality. A control can enable a style by calling the M:System.Windows.Forms.Control.SetStyle(System.Windows.Forms.ControlStyles,System.Boolean) method and passing in the appropriate T:System.Windows.Forms.ControlStyles bit (or bits) and the Boolean value to set the bit(s) to. For example, the following line of Visual Basic code would enable double-buffering.

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

If the F:System.Windows.Forms.ControlStyles.AllPaintingInWmPaint bit is set to true, the window message WM_ERASEBKGND is ignored, and both M:System.Windows.Forms.Control.OnPaintBackground(System.Windows.Forms.PaintEventArgs) and M:System.Windows.Forms.Control.OnPaint(System.Windows.Forms.PaintEventArgs) methods are called directly from the window message WM_PAINT. This generally reduces flicker unless other controls send the window message WM_ERASEBKGND to the control. You might send the window message WM_ERASEBKGRND to achieve a pseudo-transparent effect similar to F:System.Windows.Forms.ControlStyles.SupportsTransparentBackColor; for example, a T:System.Windows.Forms.ToolBar with flat appearance does this.

To fully enable double-buffering, you can set the F:System.Windows.Forms.ControlStyles.OptimizedDoubleBuffer and F:System.Windows.Forms.ControlStyles.AllPaintingInWmPaint bits to true. However the preferred method for enabling double buffering, which yields the same result, is to set the P:System.Windows.Forms.Control.DoubleBuffered property for the control to true.

If the F:System.Windows.Forms.ControlStyles.SupportsTransparentBackColor bit is set to true, and the P:System.Windows.Forms.Control.BackColor is set to a color whose alpha component is less than 255, M:System.Windows.Forms.Control.OnPaintBackground(System.Windows.Forms.PaintEventArgs) will simulate transparency by asking its parent control to paint the background. This is not true transparency.

System_CAPS_noteHinweis

If there is another control between the control and its parent, the current control will not show the control in the middle.

When the F:System.Windows.Forms.ControlStyles.UserMouse bit is set to true, the following methods are still called: M:System.Windows.Forms.Control.OnMouseDown(System.Windows.Forms.MouseEventArgs), M:System.Windows.Forms.Control.OnMouseUp(System.Windows.Forms.MouseEventArgs), M:System.Windows.Forms.Control.OnMouseEnter(System.EventArgs), M:System.Windows.Forms.Control.OnMouseMove(System.Windows.Forms.MouseEventArgs), M:System.Windows.Forms.Control.OnMouseHover(System.EventArgs), M:System.Windows.Forms.Control.OnMouseLeave(System.EventArgs), and M:System.Windows.Forms.Control.OnMouseWheel(System.Windows.Forms.MouseEventArgs).

When the control is clicked, if the F:System.Windows.Forms.ControlStyles.StandardClick bit is set to true the M:System.Windows.Forms.Control.OnClick(System.EventArgs) method is called and it raises the E:System.Windows.Forms.Control.Click event. When the control is double-clicked, and both the F:System.Windows.Forms.ControlStyles.StandardClick and F:System.Windows.Forms.ControlStyles.StandardDoubleClick bits are set to true, the click is passed on to the E:System.Windows.Forms.Control.DoubleClick event. Then the M:System.Windows.Forms.Control.OnDoubleClick(System.EventArgs) method is called and it raises the E:System.Windows.Forms.Control.DoubleClick event. However, the control can call M:System.Windows.Forms.Control.OnClick(System.EventArgs) or M:System.Windows.Forms.Control.OnDoubleClick(System.EventArgs) directly regardless of the F:System.Windows.Forms.ControlStyles.StandardClick and F:System.Windows.Forms.ControlStyles.StandardDoubleClick bit values. For more information on control click and double click behaviors, see the E:System.Windows.Forms.Control.Click and E:System.Windows.Forms.Control.DoubleClick topics.

When the F:System.Windows.Forms.ControlStyles.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. Otherwise, the text of the preceding T:System.Windows.Forms.Label control will be used instead. This style is set by default. Certain built-in control types, such as T:System.Windows.Forms.TextBox and T:System.Windows.Forms.ComboBox, reset this style so that the Text property of those controls will not be used by Active Accessibility.

Hinweise für Vererber:

Inheriting from a standard Windows Forms control and changing the F:System.Windows.Forms.ControlStyles.StandardClick or F:System.Windows.Forms.ControlStyles.StandardDoubleClick bit values to true can cause unexpected behavior or can have no effect at all if the control does not support the E:System.Windows.Forms.Control.Click or E:System.Windows.Forms.Control.DoubleClick events.

The following example demonstrates a use of T:System.Windows.Forms.ControlStyles with the E:System.Windows.Forms.Control.StyleChanged event.

// 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");
}

.NET Framework
Verfügbar seit 1.1
Zurück zum Anfang
Anzeigen: