Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De System.Windows.Forms.VisualStyles naamruimte toont VisualStyleElement objecten die de elementen van de Gebruikersinterface (UI) van Windows vertegenwoordigen die worden ondersteund door visuele stijlen. In dit onderwerp wordt uitgelegd hoe u de VisualStyleRenderer-klasse kunt gebruiken om de VisualStyleElement weer te geven die de knoppen Afmelden en Afsluiten van het menu Start vertegenwoordigen.
Een element van een visuele stijl weergeven
Maak een VisualStyleRenderer en stel deze in op het element dat u wilt tekenen. Let op het gebruik van de eigenschap Application.RenderWithVisualStyles en de methode VisualStyleRenderer.IsElementDefined; de VisualStyleRenderer constructor genereert een uitzondering als visuele stijlen zijn uitgeschakeld of een element niet is gedefinieerd.
private: VisualStyleRenderer^ renderer; VisualStyleElement^ element; public: CustomControl() { this->Location = Point(50, 50); this->Size = System::Drawing::Size(200, 200); this->BackColor = SystemColors::ActiveBorder; this->element = VisualStyleElement::StartPanel::LogOffButtons::Normal; if (Application::RenderWithVisualStyles && VisualStyleRenderer::IsElementDefined(element)) { renderer = gcnew VisualStyleRenderer(element); } }private VisualStyleRenderer renderer = null; private readonly VisualStyleElement element = VisualStyleElement.StartPanel.LogOffButtons.Normal; public CustomControl() { this.Location = new Point(50, 50); this.Size = new Size(200, 200); this.BackColor = SystemColors.ActiveBorder; if (Application.RenderWithVisualStyles && VisualStyleRenderer.IsElementDefined(element)) { renderer = new VisualStyleRenderer(element); } }Private renderer As VisualStyleRenderer = Nothing Private element As VisualStyleElement = _ VisualStyleElement.StartPanel.LogOffButtons.Normal Public Sub New() Me.Location = New Point(50, 50) Me.Size = New Size(200, 200) Me.BackColor = SystemColors.ActiveBorder If Application.RenderWithVisualStyles And _ VisualStyleRenderer.IsElementDefined(element) Then renderer = New VisualStyleRenderer(element) End If End SubRoep de methode DrawBackground aan om het element weer te geven dat de VisualStyleRenderer momenteel vertegenwoordigt.
protected: virtual void OnPaint(PaintEventArgs^ e) override { // Draw the element if the renderer has been set. if (renderer != nullptr) { renderer->DrawBackground(e->Graphics, this->ClientRectangle); } // Visual styles are disabled or the element is undefined, // so just draw a message. else { this->Text = "Visual styles are disabled."; TextRenderer::DrawText(e->Graphics, this->Text, this->Font, Point(0, 0), this->ForeColor); } }protected override void OnPaint(PaintEventArgs e) { // Draw the element if the renderer has been set. if (renderer != null) { renderer.DrawBackground(e.Graphics, this.ClientRectangle); } // Visual styles are disabled or the element is undefined, // so just draw a message. else { this.Text = "Visual styles are disabled."; TextRenderer.DrawText(e.Graphics, this.Text, this.Font, new Point(0, 0), this.ForeColor); } }Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs) ' Draw the element if the renderer has been set. If (renderer IsNot Nothing) Then renderer.DrawBackground(e.Graphics, Me.ClientRectangle) ' Visual styles are disabled or the element is undefined, ' so just draw a message. Else Me.Text = "Visual styles are disabled." TextRenderer.DrawText(e.Graphics, Me.Text, Me.Font, _ New Point(0, 0), Me.ForeColor) End If End Sub
De code compileren
Voor dit voorbeeld is het volgende vereist:
Een aangepast besturingselement dat is afgeleid van de klasse Control.
Een Form die als host fungeert voor het aangepaste besturingselement.
Verwijzingen naar de System, System.Drawing, System.Windows.Formsen System.Windows.Forms.VisualStyles naamruimten.
Zie ook
.NET Desktop feedback