ControlStyles Enumeráció
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Egy vezérlőelem stílusát és viselkedését határozza meg.
Ez a felsorolás támogatja a tagértékek bitenkénti kombinációját.
public enum class ControlStyles
[System.Flags]
public enum ControlStyles
[<System.Flags>]
type ControlStyles =
Public Enum ControlStyles
- Öröklődés
- Attribútumok
Mezők
| Name | Érték | Description |
|---|---|---|
| ContainerControl | 1 | Ha |
| UserPaint | 2 | Ha |
| Opaque | 4 | Ha |
| ResizeRedraw | 16 | Ha |
| FixedWidth | 32 | Ha |
| FixedHeight | 64 | Ha |
| StandardClick | 256 | Ha |
| Selectable | 512 | Ha |
| UserMouse | 1024 | Ha |
| SupportsTransparentBackColor | 2048 | Ha |
| StandardDoubleClick | 4096 | Ha |
| AllPaintingInWmPaint | 8192 | Ha |
| CacheText | 16384 | Ha |
| EnableNotifyMessage | 32768 | Ha |
| DoubleBuffer | 65536 | Ha |
| OptimizedDoubleBuffer | 131072 | Ha |
| UseTextForAccessibility | 262144 | Megadja, hogy a vezérlőelem |
| ApplyThemingImplicitly | 524288 | Bizonyos felhasználói felülettel kapcsolatos színmódok (sötét mód/világos mód) esetén a vezérlők automatikusan alkalmazhatják a megfelelő színt. Különösen a rendszer által felügyelt görgetősávokat használó vezérlők használhatják ezt a beállítást. Vegye figyelembe, hogy a beállítások használatával bizonyos win32-vezérlők inaktívvá válnak egy adott témához. |
Példák
Az alábbi példa az esemény használatát ControlStyles mutatja beStyleChanged.
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
Private Sub RegisterEventHandler()
AddHandler Me.StyleChanged, AddressOf MyForm_StyleChanged
End Sub
' 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
Megjegyzések
A vezérlők ezt a számbavételt különböző tulajdonságokban és metódusokban használják a funkciók megadásához. A vezérlőelemek úgy engedélyezhetik a stílust, hogy meghívják a SetStyle metódust, és a megfelelő ControlStyles bitet (vagy biteket) és a logikai értéket adják meg a bit(ek) beállításához. A következő Visual Basic kódsor például lehetővé tenné a dupla pufferelést.
myControl.SetStyle(UserPaint Or AllPaintingInWmPaint Or DoubleBuffer, True)
Ha az AllPaintingInWmPaint bit értéke be van állítva true, a rendszer figyelmen kívül hagyja az ablaküzenetet WM_ERASEBKGND, és mindkettőt OnPaintBackground és OnPaint metódust közvetlenül az ablaküzenetből WM_PAINT. Ez általában csökkenti a villódzást, hacsak más vezérlők nem küldik el az ablaküzenetet WM_ERASEBKGND a vezérlőnek. Az ablaküzenetet elküldheti WM_ERASEBKGRND a SupportsTransparentBackColor-hoz hasonló pszeudo-transzparens hatás eléréséhez; Például egy ToolBar lapos megjelenésű eszköz ezt teszi.
A dupla pufferelés teljes engedélyezéséhez állítsa az OptimizedDoubleBuffer és az AllPaintingInWmPaint biteket a következőre true: . A dupla pufferelés engedélyezésének elsődleges módszere azonban, amely ugyanazt az eredményt adja, a DoubleBuffered vezérlőelem truetulajdonságának beállítása.
Ha a SupportsTransparentBackColor bit trueértéke , és a BackColor beállítás olyan színre van állítva, amelynek alfaösszetevője kisebb, mint 255, OnPaintBackground akkor az áttetszőség szimulálásához kérje meg a szülővezérlőt, hogy festse le a hátteret. Ez nem valódi átláthatóság.
Note
Ha a vezérlő és a szülője között van egy másik vezérlő, az aktuális vezérlő nem fogja középen megjeleníteni a vezérlőt.
A UserMouse bit beállításakor truea rendszer továbbra is a következő metódusokat hívja meg: Control.OnMouseDown, Control.OnMouseUp, , Control.OnMouseEnter, Control.OnMouseMove, Control.OnMouseHoverControl.OnMouseLeaveés Control.OnMouseWheel.
Ha a vezérlőelemre kattint, a StandardClick bit a metódus meghívására trueControl.OnClick van állítva, és az eseményt emeli Control.Click ki. Ha a vezérlőre duplán kattint, és a StandardClick és a StandardDoubleClick bit is be van állítva true, a kattintás tovább lesz adva az DoubleClick eseménynek. Ezután meghívja a Control.OnDoubleClick metódust, és az eseményt Control.DoubleClick emeli ki. A vezérlő azonban meghívhatja OnClick vagy OnDoubleClick közvetlenül függetlenül a StandardClick és a StandardDoubleClick bitértékeket. A kattintás és a dupla kattintás viselkedésével kapcsolatos további információkért tekintse meg a témaköröket és Control.Click témaköröketControl.DoubleClick.
Ha a UseTextForAccessibility bit be van állítva, és a vezérlő Text tulajdonságában van egy érték, a vezérlő Text tulajdonságának értéke határozza meg a vezérlő alapértelmezett Active Accessibility-nevét és billentyűparancsát. Ellenkező esetben a program az előző Label vezérlőelem szövegét használja. Ez a stílus alapértelmezés szerint be van állítva. Bizonyos beépített vezérlőtípusok, például TextBox a ComboBoxstílus alaphelyzetbe állítása, hogy a vezérlők tulajdonságát ne használja az Text Aktív akadálymentesség.