Cara: Menggunakan Kelas Penyajian Kontrol
Contoh ini menunjukkan cara menggunakan ComboBoxRenderer kelas untuk merender panah drop-down kontrol kotak kombo. Contohnya terdiri dari OnPaint metode kontrol kustom sederhana. Properti ComboBoxRenderer.IsSupported digunakan untuk menentukan apakah gaya visual diaktifkan di area klien jendela aplikasi. Jika gaya visual aktif, maka ComboBoxRenderer.DrawDropDownButton metode akan merender panah drop-down dengan gaya visual; jika tidak, ControlPaint.DrawComboButton metode akan merender panah drop-down dalam gaya Windows klasik.
Contoh
// Render the drop-down arrow with or without visual styles.
protected:
virtual void OnPaint(PaintEventArgs^ e) override
{
__super::OnPaint(e);
if (!ComboBoxRenderer::IsSupported)
{
ControlPaint::DrawComboButton(e->Graphics,
this->ClientRectangle, ButtonState::Normal);
}
else
{
ComboBoxRenderer::DrawDropDownButton(e->Graphics,
this->ClientRectangle, ComboBoxState::Normal);
}
}
// Render the drop-down arrow with or without visual styles.
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
if (!ComboBoxRenderer.IsSupported)
{
ControlPaint.DrawComboButton(e.Graphics,
this.ClientRectangle, ButtonState.Normal);
}
else
{
ComboBoxRenderer.DrawDropDownButton(e.Graphics,
this.ClientRectangle, ComboBoxState.Normal);
}
}
' Render the drop-down arrow with or without visual styles.
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
MyBase.OnPaint(e)
If Not ComboBoxRenderer.IsSupported Then
ControlPaint.DrawComboButton(e.Graphics, _
Me.ClientRectangle, ButtonState.Normal)
Else
ComboBoxRenderer.DrawDropDownButton(e.Graphics, _
Me.ClientRectangle, ComboBoxState.Normal)
End If
End Sub
Mengompilasi Kode
Contoh ini membutuhkan:
Kontrol kustom yang berasal dari Control kelas .
Form yang menghosting kontrol kustom.
Referensi ke Systemnamespace , System.Drawing, System.Windows.Forms, dan System.Windows.Forms.VisualStyles .
Baca juga
.NET Desktop feedback