WPF: Rendering ohne Hardwareunterstützung

WPF basiert unter anderem auf der hardwareseitigen Unterstützung beim Rendern der GUI-Elemente. Dies erfolgt auf der Grafikkarte. Bei preisgünstigeren Computermodellen verzichtet jedoch der Hersteller auf den Einbau einer separaten Grafikkarte und verlässt sich auf die so genannte interne Grafikkarte, die jedoch softwareseitig auf der CPU (anstatt auf der GPU einer Grafikkarte) ihren Dienst verrichtet. Dies führ tin aller Regel dazu, dass bei Oberflächen mit erhöhter grafischer Aktivität die Systemleistung in die Knie geht und die CPU zu einem Großteil mit Rendering-Aufgaben belastet wird.

Typischerweise sind Entwicklungsrechner seitens ihrer Hardware recht leistungsfähig und spiegeln etwaige Leistungsmankos der Computer, auf denen die entwickelte Software später ihren Betrieb verrichten soll, nicht wider.

Die hardwareseitige Unterstützung lässt sich jedoch mit einem einfachen Handgriff deaktivieren und somit das Rendern auf die Software verschieben:

Microsoft bietet ein Tool zum Aufspüren etwaiger Resourcenlecks:
WPF Performance Suite

Typische Reaktionen bei der Softwareentwicklung und beim Test

  1. Hab’s gleich!
  2. Bei mir geht’s!
  3. Eben ging’s noch!
  4. Hat mal funktioniert!
  5. Das geht schon länger nicht mehr!
  6. Das war schon so!
  7. Ist mir auch schon aufgefallen!
  8. Das ging noch nie!
  9. Es ist historisch bedingt!
  10. An der Ecke war ich nicht!
  11. Ooops!
  12. Eigentlich sollte es nicht passieren!
  13. Wie ist das denn möglich?
  14. Musst Du einfach wegklicken!
  15. Das soll so sein!
  16. Es ist „Gottes“ Wille!
  17. It’s not a bug, it’s a feature!
  18. Das ist VisualStudio!
  19. Das stellst Du besser nicht in Frage!

tbc…

WPF: TabControl Header ausblenden

TabControls sind wichtige Gruppierelemente, jedoch macht díe Anzeige des TabControls bei Einzelelementen nur bedingt Sinn. So kann das Ausblenden des TabControl-Headers projekt- und situationsbedingt ausdrücklich gefordert sein.
Eine Möglichkeit besteht darin, die Vorgabe direkt im xaml-Code zu verankern. Dazu wird das Property „ItemContainerStyle“ des TabControls entsprechend angepasst und die Anzahl der darzustellenden Items als Entscheidungskriterium zum Ausblenden herangezogen: ist genau ein Item enthalten, wird der Header als „collapsed“ dargestellt:

Alternativ lässt sich das auch im Code festlegen:

Quellen:
Stackoverflow: Hide the TabControl header
Stackoverflow: Hide the tab headers in WPF TabControl