Ship a WPF application, end-to-end.
A defined product, a fixed price, a senior-only team. From RFC to deployed desktop app in 8–14 weeks.
$15k–$30k
FIXED SCOPE
- Senior engineers only
- Fixed quote in week 1
- Code, infra, runbook — yours
WPF isn't trendy. It's the framework running trading floors, hospital systems, and manufacturing dashboards — applications where stability isn't a feature, it's the requirement. We ship WPF development services that modernise existing applications to .NET 10, build new Windows-only desktop apps with proper MVVM architecture, and migrate legacy WPF to cross-platform when the business genuinely needs it.
Why Entalogics for WPF
The WPF apps we inherit usually share the same story — code-behind that runs to 3,000 lines, no ViewModel layer, data bindings that silently fail, and a .NET Framework version Microsoft stopped patching two years ago. WPF is stable. The codebases built on it usually aren't.
DataGrid and ListView without virtualisation load every row into memory. We've inherited WPF apps that spike to 2GB on a 10,000-row dataset. VirtualizingStackPanel, deferred scrolling, and proper use of CollectionView fix this before users notice.
ViewModels own logic and state. Views own layout and templates. No business logic in code-behind. No direct database calls from the ViewModel. Services behind interfaces, injected with DI. A testable architecture that a new developer reads in a day.
WPF swallows binding errors by default — a misspelled property name just shows nothing. We enable binding error tracing in debug, enforce compiled bindings where possible, and treat a silent binding failure as a bug, not a feature.
No magic strings in XAML bindings. Design-time data contexts for compile-time checking. DTO validation at the service boundary. When a property name changes, the build breaks — not the UI at runtime.
When WPF, when not
WPF is in maintenance mode — Microsoft ships updates but no major new features. That makes it the wrong choice for some projects and exactly right for others. We'll tell you on the first call which one yours is.
STAY ON WPF WHEN
CONSIDER MIGRATION WHEN
WE SAY NO WHEN
What we build with WPF
The shapes of WPF development work we deliver most. Each built for enterprise production — not a XAML tutorial.
Real-time data grids, live charting, multi-monitor layouts, sub-millisecond UI updates. The surface WPF was purpose-built for.
Multi-role navigation, complex form workflows, audit logging, Active Directory integration. The internal apps that run departments.
Hardware integration, real-time sensor data, custom control rendering, 24/7 uptime requirements. WPF on the factory floor.
HIPAA-compliant interfaces, HL7/FHIR integration, patient dashboards, DICOM viewers. Regulated environments where stability is non-negotiable.
Upgrade from .NET Framework 4.x to .NET 10 LTS. Fluent theme. BinaryFormatter removal. CI/CD pipeline modernisation. No feature freeze.
When Windows-only no longer works. Avalonia for WPF-like XAML cross-platform, Blazor Hybrid for web-first migration, or Electron for web team velocity.
The playbook
WPF patterns from real enterprise applications — not MVVM blog posts.
P01
CommunityToolkit.Mvvm for ObservableObject and RelayCommand. Microsoft.Extensions.DependencyInjection for service registration. No magic. No framework lock-in. Testable from day one.
P02
x:Bind in UWP-adjacent patterns, design-time DataContext enforcement, binding failure tracing enabled. Silent binding errors treated as bugs.
P03
VirtualizingStackPanel mode on every ItemsControl displaying more than 50 items. Container recycling enabled. Deferred scrolling on large datasets.
P04
Each feature is a Prism module with its own registration, navigation, and region management. Modules load independently. Two teams build two features without merge conflicts.
P05
ViewModels tested with real service fakes, not mocked everything. UI automation tests via FlaUI for critical workflows. CI runs on every PR.
P06
One project at a time. `<TargetFramework>net10.0-windows</TargetFramework>` per assembly. The app stays deployable throughout. No flag-day.
Signature case
A financial trading platform on WPF .NET Framework 4.8 — 4-second cold start, DataGrid rendering 15,000 rows without virtualisation consuming 1.8GB, no CI/CD pipeline, and manual ClickOnce deployment requiring IT intervention. Upgraded to .NET 10 with Fluent theme, virtualised grids, and Azure DevOps pipeline in 10 weeks. No feature freeze.
Before
.NET Framework 4.8 · cold start 4s · DataGrid 1.8GB at 15K rows · manual deploy · no CI/CD
After
.NET 10 LTS · cold start 1.4s · DataGrid 180MB at 15K rows · Azure DevOps auto-deploy · full CI
Engagement shape
A typical WPF development engagement. We modernise or build screen by screen — never flag-day. The current app stays deployed while we work.
Two senior WPF developers. .NET version assessment, binding error inventory, performance profiling, MVVM compliance review. A ranked, dollarized RFC.
.NET 10 baseline, MVVM Toolkit wired in, Fluent theme applied, one production screen modernised end-to-end. Real performance on target hardware.
Module by module, project by project. Old and new coexist. Your team keeps shipping throughout.
CI/CD pipeline live. Fluent theme applied. Runbook handed to your team — or we stay on retainer.
Stack
Our default WPF development stack — picked for enterprise production.
Engagement
No hourly retainer that bills for "thinking time." Pick a lane that matches your stage; everything is fixed-quote or transparently rated.
A defined product, a fixed price, a senior-only team. From RFC to deployed desktop app in 8–14 weeks.
$15k–$30k
FIXED SCOPE
Embedded engineers in your Slack, your Azure DevOps, your standups. Senior XAML and C# engineers. Pause, resize, end with 30 days' notice.
$5k / eng / mo
PER ENGINEER
A long-term partner for enterprise orgs maintaining or modernising WPF estates — .NET upgrades, cross-platform migration planning, hiring help.
custom
PROCUREMENT-FRIENDLY
Founder-direct
Thirty minutes with the founder. We'll bring a senior WPF developer, the relevant playbook, and a candid read on whether WPF modernisation is the right call — or whether migration to a cross-platform framework makes more sense for your business.