

ProEssentials v11 ist die erste Premium-Charting-Bibliothek für WinUI 3, die auf einer von Grund auf nativen C++-Engine aufbaut. Jedes andere WinUI-Chart am Markt ist ein Managed-.NET-Control, das durch die XAML-Schicht zeichnet. ProEssentials hostet stattdessen dieselbe native Direct3D- und Direct2D-Engine, die seit Jahren seine C++ MFC-, Delphi-, ActiveX-, WinForms- und WPF-Produkte antreibt - jetzt direkt unter WinUI 3.
Diese native Engine ist der Grund, warum ProEssentials 100 Millionen Punkte in Echtzeit streamen, echte GPU-3D- und 4D-Oberflächen rendern und als native ARM64-Binärdatei ausgeliefert werden kann. Sie ist zudem so lizenziert, wie Entwickler es früher erwarten durften: ein einmaliger, dauerhafter Kauf mit kostenlosem, lebenslangem Support statt eines Abonnements, das Sie jedes Jahr verlängern.
Die Tabellen unten vergleichen ProEssentials mit den vier Komponenten-Suiten, die heute ein WinUI-Chart-Control anbieten: Syncfusion, Telerik, DevExpress und ComponentOne.
Quick NuGet clone, build, run? Grab the ProEssentials WinUI starter on GitHub (GigasoftInc/winui-starter).
Der größte Unterschied verläuft entlang der ersten Datenzeile: ProEssentials rendert mit einer nativen C++-Engine, während jeder Mitbewerber über Managed XAML rendert. Fast alles andere auf dieser Seite folgt daraus.
| Factor | ProEssentials | Syncfusion | Telerik | DevExpress | ComponentOne |
|---|---|---|---|---|---|
| Rendering Engine | Native C++ Direct3D + Direct2D — one engine shared with MFC, Delphi and ActiveX | Managed XAML; WriteableBitmap fast series | Managed XAML; Composition ContainerVisuals | Managed XAML control | Managed XAML; optional Direct2D render mode |
| Large-Data Ceiling (2-D) | ✅ 100 million points, real time (GigaPrime2D) | Bitmap fast series; million-point benchmark is WPF | Aggregate the data before binding | Sampling; largest figures are WinForms | Direct2D mode; 50k published (WinForms) |
| Data Loading Model | Zero-copy — reads your existing float[] in place | Object-per-point ItemsSource | Object-per-point ItemsSource | Object-per-point ItemsSource | ItemsSource binding |
| GPU 3-D / 4-D Surfaces | ✅ Native Direct3D — surface, wireframe, scatter, contour, 4-D color | 2-D charting focus | 2-D charting focus | 2-D charting focus | 2-D charting focus |
| Native ARM64 Engine | ✅ Yes — PEGRPARM64I.DLL native binary | Managed .NET (ARM64 via runtime) | Managed .NET (ARM64 via runtime) | Managed .NET (ARM64 via runtime) | Managed .NET (ARM64 via runtime) |
| How far the same control reaches | One engine, one PExxx API — WinUI, WPF, WinForms, C++ MFC, Delphi, ActiveX, embedded scenarios, plus basic web reporting via WebForms | WinUI control targets Windows desktop; web and mobile are separate product lines | WinUI control targets Windows desktop; web and mobile are separate product lines | WinUI control targets Windows desktop; web and mobile are separate product lines | WinUI control targets Windows desktop; web and mobile are separate product lines |
| AI Code Assistance | pe_query.py — answers validated against the compiled DLL | Docs and AI chat (can hallucinate) | Docs and AI chat (can hallucinate) | Docs and AI chat (can hallucinate) | Docs (can hallucinate) |
| License Model | Perpetual — one-time, royalty-free | Annual subscription | Annual subscription | Annual subscription | Annual subscription |
| Activation | One key for all your apps — set at dev setup, no phone-home | License key registered in app code | License key in the project | License key in the project | License key in the application |
| Support | Free, unlimited, lifetime of the version | With active subscription | With active subscription | With active subscription | With active subscription |
| What You License | A focused charting product | Full suite (chart is 1 of 100+ controls) | Full suite (chart is 1 of 100+ controls) | Full suite (chart is 1 of 100+ controls) | Full suite (chart is 1 of 100+ controls) |
Ein Managed-WinUI-Chart baut sein Bild in .NET auf und übergibt das Ergebnis an den XAML-Compositor. Für ein paar tausend Punkte ist das in Ordnung, doch mit wachsender Datenmenge werden der Objektgraph, die Garbage Collection und das Marshalling pro Punkt zum Engpass.
ProEssentials überspringt diese Schicht. Die C++-Engine spricht direkt mit Direct3D und Direct2D, baut die Chart-Geometrie mit Compute Shaders auf der GPU auf und liest Ihre Daten-Arrays an Ort und Stelle. Das WinUI-Control ist ein schlanker Host um diese Engine herum, nicht der Renderer selbst.
Da die Engine über C++ MFC, Delphi, ActiveX, WinForms, WPF und WinUI hinweg derselbe native Code ist, sieht ein Chart überall gleich aus und verhält sich gleich, und die API, die Sie einmal lernen, trägt über alle Schnittstellen hinweg.
| Library | WinUI Rendering | Engine | Shared Engine Reach |
|---|---|---|---|
| ProEssentials | Native Direct3D + Direct2D | C++ | WinUI, WPF, WinForms, MFC, Delphi, ActiveX, WebForms |
| Syncfusion | XAML + WriteableBitmap | Managed .NET | WinUI only (web/mobile are separate products) |
| Telerik | XAML + Composition visuals | Managed .NET | WinUI only (web/mobile are separate products) |
| DevExpress | XAML | Managed .NET | WinUI only (web/mobile are separate products) |
| ComponentOne | XAML + optional Direct2D | Managed .NET | WinUI only (web/mobile are separate products) |
Das FlexChart von ComponentOne bietet durchaus einen Direct2D-Render-Modus, ProEssentials ist also nicht das einzige WinUI-Chart, das Direct2D nutzen kann. Der Unterschied ist, dass ProEssentials durchgängig eine vollständig native C++-Engine ist, mit GPU-3D und einem nativen ARM64-Build, statt eines Managed-Controls, das für einen einzigen Schnellpfad Direct2D aufruft.
Ein ProEssentials-Chart wird nicht von XAML gezeichnet. Die native Engine erstellt ihre eigene DXGI-flip-model composition swap chain (BGRA8, zwei Puffer, FLIP_DISCARD) und übergibt die resultierende IDXGISwapChain1 über ISwapChainPanelNative::SetSwapChain an den XAML-Host. Ab diesem Punkt komponiert DWM die Pixel des Charts direkt in Ihren Visual Tree: keine zwischengeschaltete WriteableBitmap, keine CPU-Kopie pro Frame, kein XAML-Shape-Tree, der durchlaufen werden muss. Der Direct2D-Gerätekontext wird auf demselben D3D11-Gerät erstellt und zielt auf den Backbuffer selbst, sodass 2-D-Inhalte von der GPU in genau den Puffer gezeichnet werden, den DWM als Nächstes präsentiert. Wir rendern in Gerätepixeln bei 96 DPI mit einer Halb-Pixel-Transformation - deshalb liegen Achsenlinien und Gitterlinien auf exakten Pixelgrenzen, statt über zwei zu verschmieren.
Die Latenz ist bewusst gewählt. DXGI puffert bereitwillig zwei oder drei Frames im Voraus; wir rufen SetMaximumFrameLatency(1) auf, damit die Present-Queue nie anwächst. Zusammen mit On-Demand-Rendering - präsentiert wird, wenn sich Ihre Daten ändern, statt in einer 60-fps-Schleife - bleibt das Chart während eines Drag reaktionsschnell, ohne die GPU zu beschäftigen, wenn sich nichts bewegt. Ein Zoom-Box-Drag erhält zusätzliche Unterstützung durch die RenderPriority-Eigenschaft, die das Ziehen über routinemäßige Chart-Neuzeichnungen stellt, sodass die Box dem Zeiger folgt, statt dahinter zu verhungern.
Es lohnt sich, genau zu benennen, was WinUI hier geändert hat. Die DirectX-Interop von WPF läuft weiterhin über D3DImage, einen Direct3D-9Ex-Shared-Surface-Pfad aus dem Jahr 2008: D3D11-Inhalte müssen in eine D3D9Ex-Surface kopiert werden, bevor der Compositor von WPF sie akzeptiert. Jede WPF-Charting-Bibliothek erbt diesen Umweg, unsere eingeschlossen. Es ist eine Plattformbeschränkung und keine Herstellerentscheidung, und sie ist ein wesentlicher Grund dafür, warum dieselbe Engine unter WinUI mit geringerer Latenz präsentiert als unter WPF.
Zwei Details aus dem 3-D-Pfad zeigen, wie eigenwillig Composition ist. DXGI erlaubt es nicht, eine flip-model composition swap chain zu multisamplen; ist MSAA aktiviert, rendert die Engine die 3-D-Szene daher in ein Offscreen-Multisample-Ziel und löst sie in den Single-Sample-Backbuffer auf. So behalten Sie weiche Kanten auf einem Surface-Plot, ohne auf Composition zu verzichten. Auch die 2-D- und 3-D-Swap-Chains unterscheiden sich bewusst im Alpha-Modus. Die 2-D-Chain ist premultiplied, damit das Chart über Ihrem XAML-Hintergrund komponiert wird, während die 3-D-Chain opak ist, weil die 3-D-Szene mit Alpha null gelöscht wird und das Direct2D-Achsen-Overlay Farbe, aber kein Alpha schreibt. Unter einer premultiplied Chain würde DWM diese Overlay-Pixel als transparent behandeln, und Titel, Legende und Achsen würden stillschweigend verschwinden.
Overlays erhalten dieselbe Behandlung statt eines Kompromisses. Echtzeit-Tabellenannotationen rendern in eine zweite, vollständig transparente Composition Swap Chain, die auf denselben D3D11- und Direct2D-Geräten erstellt und an ein eigenes Panel in der Control-Vorlage gebunden ist. Sie teilt sich die Halb-Pixel-Transformation des Charts, sodass die beiden Ebenen pixelgenau übereinanderliegen, und sie zeichnet unabhängig neu: Das Aktualisieren eines Live-Tabellen-Overlays rendert das darunterliegende Chart nicht neu.
Bei großen Datenmengen zeigt sich die native Engine am deutlichsten. ProEssentials richtet das Chart auf Ihr float-Array aus und sendet alle 100 Millionen Werte an die GPU, ohne dass ein spezieller Serientyp zu wählen wäre. Jeder Punkt wird dort verarbeitet: Ist die Datenmenge dichter als die Anzeige, verdichtet ein filternder Compute Shader jede Pixelspalte auf 50 Min/Max-Paare bzw. 100 gezeichnete Punkte pro Pixel, sodass jede Spitze erhalten bleibt und dichte Bereiche als echte, durchgehende Füllung rendern - genau so, wie sie aussähen, wenn jeder Punkt einzeln gezeichnet würde. Die Managed-Suiten können ebenfalls große Datensätze anzeigen, stützen sich dabei aber auf Downsampling auf Viewport-Breite oder auf Bitmap-Schnellpfade, und sie kopieren Ihre Daten zunächst in Objektsammlungen.
| Factor | ProEssentials | Syncfusion | Telerik | DevExpress | ComponentOne |
|---|---|---|---|---|---|
| Plots 100M in real time? | ✅ Yes — natively | ⚠️ Bitmap series (WPF benchmark) | ⚠️ Aggregate first | ⚠️ Sample first | ⚠️ Direct2D (50k published) |
| Data model | Zero-copy float[] pointer | Object-per-point | Object-per-point | Object-per-point | ItemsSource binding |
| Special series type needed? | No — same control at any size | Yes — FastLineBitmapSeries | Yes — sampling settings | Yes — sampling settings | Yes — Direct2D render mode |
| Full-fidelity display | Lossless GPU min/max filter | Bitmap rasterization | Downsampled subset | Sampled subset | Direct2D rasterization |
Die vollständige Anleitung zu 100 Millionen Punkten, mit WinUI-Code für jede Bibliothek, haben wir als eigenen Artikel geschrieben. Zum WinUI-Vergleich mit 100 Millionen Punkten.
Die gängigen WinUI-Suiten konzentrieren sich auf kartesische 2-D- und Finanz-Charts. ProEssentials bringt seine native Direct3D-Pipeline auch nach WinUI, sodass dasselbe Control 3-D-Oberflächen, Gittermodelle, Streupunktwolken, Konturen und 4-D-farbcodierte Plots auf der GPU rendert. Für Engineering-, Wissenschafts- und Signalanwendungen, die einen echten Surface-Plot statt eines stilisierten 3-D-Balkens brauchen, ist dies eine Kategorie, in der die Managed-Controls unter WinUI nicht mithalten.
ProEssentials ist ein einziger öffentlicher Download ohne Konto und ohne Registrierung: PE11-Setup.exe von unserer Website. Es installiert alles lokal, einschließlich des vollständigen Beispielsatzes, des lokalen Hilfesystems und eines TestBed aus vorkompilierten EXEs, die Sie sofort nach Abschluss des Setups ausführen können. NuGet-Pakete werden ebenfalls für Installationen auf Projektebene bereitgestellt, doch ein NuGet enthält nur die Assemblies: kein Hilfesystem, keine Beispiele, kein TestBed. Deshalb empfehlen wir für die Evaluierung das Setup.
| Factor | ProEssentials | Syncfusion | Telerik | DevExpress | ComponentOne |
|---|---|---|---|---|---|
| How you get it | One public download — PE11-Setup.exe | Account, then installer or NuGet | Account, then installer or feed | Account, then private feed | Account, then installer or NuGet |
| Account to evaluate? | No | Yes | Yes | Yes | Yes |
| NuGet option | Yes — local feed added by setup, plus nuget.org | Yes | Yes + license key | Private feed + credentials | Yes + license key |
| What the download gives you | Assemblies + full example set + local help + pre-built TestBed EXEs | Suite installer / demo app | Suite installer / demo app | Suite installer / demo app | Suite installer / demo app |
Unter WinUI erbt jeder Anbieter dieselben Plattformanforderungen. Eine ungepackte WinUI-Anwendung benötigt auf dem Zielrechner die .NET 10 Desktop Runtime und die Windows App SDK Runtime, und Sie verteilen den gesamten Ausgabeordner statt einer einzelnen EXE. Zwischen den Bibliotheken unterscheidet sich nur das, was das Chart selbst obendrauf ergänzt.
| Factor | ProEssentials | Syncfusion | Telerik | DevExpress | ComponentOne |
|---|---|---|---|---|---|
| Runtimes on the target machine | .NET 10 Desktop + Windows App SDK | Same — WinUI platform requirement | Same — WinUI platform requirement | Same — WinUI platform requirement | Same — WinUI platform requirement |
| What the chart itself adds | Your assembly + one native engine DLL — PEGRP64I.DLL, or PEGRPARM64I.DLL on ARM64 | Managed assemblies | Managed assemblies | Managed assemblies | Managed assemblies |
| Native ARM64 build | Yes — separate ARM64 engine (AnyCpu assembly embeds both) | Managed (ARM64 via runtime) | Managed (ARM64 via runtime) | Managed (ARM64 via runtime) | Managed (ARM64 via runtime) |
| Per-app licensing step | One serial covers all your apps — no per-exe key, no phone-home | License key registered in app code | License key in the project | License key in the project | License key in the application |
Dies ist kein direkter Preisvergleich: Die vier Suiten verkaufen Bundles, in denen das Chart eines von über hundert Controls ist, während ProEssentials ein fokussiertes Charting-Produkt ist. Der deutlichere Unterschied liegt im Modell. ProEssentials ist ein einmaliger, dauerhafter Kauf; die Suiten sind Jahresabonnements, die Sie verlängern, um Updates und Support zu behalten. Die Zahlen unten sind indikative Einstiegspreise der Suiten zum Vergleich, keine Preise allein für das Chart.
| Factor | ProEssentials | Syncfusion | Telerik | DevExpress | ComponentOne |
|---|---|---|---|---|---|
| License model | Perpetual — one-time | Annual subscription | Annual subscription | Annual subscription | Annual subscription |
| Indicative price (1 dev) | $4,799 perpetual | Free community tier, else paid | DevCraft suite, from ~$1,126 / yr | Universal suite, from ~$2,254 / yr | Per-developer / yr |
| Pay again next year? | No | Yes | Yes | Yes | Yes |
| Free community tier? | Full-featured evaluation | Yes — under revenue / size limits | No | No | No |
| Support | Free, unlimited, lifetime | Forums; paid tiers | With active subscription | With active subscription | With active subscription |
Auch die Mechanik ist einfach. ProEssentials stellt beim Kauf eine Seriennummer bereit, die Sie bei der Einrichtung Ihrer Entwicklungsumgebung verwenden. Es gibt kein zusätzliches Phone-home und keine Authentifizierung pro Anwendung.
Die Preise sind indikative Einstiegspreise der Suiten (ComponentSource, 2026) und ändern sich im Lauf der Zeit; bestätigen Sie die aktuellen Preise und die Bedingungen der Community-Lizenz beim jeweiligen Anbieter.
Wenn Ihre WinUI-App überschaubare Datenmengen darstellt und vollständig in der .NET-Welt lebt, wird Ihnen jede dieser Suiten gute Dienste leisten - möglicherweise besitzen Sie bereits eine davon. Wenn Sie echte Performance im großen Maßstab, GPU-3-D- und 4-D-Oberflächen, einen nativen ARM64-Build oder dasselbe Chart gemeinsam mit einer C++-, Delphi- oder ActiveX-Codebasis benötigen, ist ProEssentials die einzige WinUI-Option, die dafür gebaut wurde - und sie kommt ohne Abonnement.
Der vollständige Benchmark, mit WinUI-Code für jede Bibliothek.
Read itDie Angaben zu Rendering und Lizenzierung der Mitbewerber stammen aus deren eigener Dokumentation und den öffentlichen Preisangaben:
Syncfusion (WinUI SfCartesianChart)
Telerik (UI for WinUI RadChart)
DevExpress (WinUI / Universal)
ComponentOne / MESCIUS (FlexChart für WinUI)
Sagen Sie uns, was Sie darstellen und wie viele Daten Sie haben. Die Entwickler, die die Engine gebaut haben, antworten Ihnen.
Contact usIhr Erfolg ist unser höchstes Ziel, indem wir Ihrem Unternehmen und Ihren Endbenutzern den einfachsten und professionellsten Nutzen bieten.
ProEssentials wurde von professionellen Elektroingenieuren erschaffen, die ihre eigenen Charting-Komponenten benötigten. Treten Sie unserer großen Liste von Top-Engineering-Unternehmen bei, die ProEssentials einsetzen.
Vielen Dank, dass Sie ein ProEssentials-Kunde sind, und vielen Dank, dass Sie die ProEssentials-Charting-Engine recherchieren.