WPF Runtime
BeepWpfForms — the WPF equivalent of WinFormFormHost, with the same host API and one real structural difference.
BeepWpfForms
Defined in TheTechIdea.Beep.Forms.Wpf/Forms/FormHost/BeepWpfForms.cs. It mirrors the WinForms host almost line-for-line: the same Definition / FormsManager API, the same events (ActiveBlockChanged, NotificationRaised, MessageRaised / MessageCleared, TimerFired, FormMessageReceived), and the identical rollback-on-exception bind logic described in WinForms Runtime. It hosts content in an internal Grid / DockPanel (_contentHost / _rootPanel).
BeepWpfForms shows only one active block at a time (documented directly on the shipped OrderEntryWindow.cs example). A master-detail screen on WPF needs two separate BeepWpfForms instances — one per block — with an explicit SyncFromManager() call to keep the detail host in sync with the master. This is different from WinForms, where sibling WinFormBlockHost controls inside one host auto-cascade with no extra call.
Wiring point
WPF has no design-time-equivalent auto-wire point the way WinForms does — status surfaces are wired on Loaded instead of during control-tree construction.
Dialogs
| Dialog | Location | Purpose |
|---|---|---|
WpfAlertDialog | Dialogs/WpfAlertDialog.xaml(.cs) | Alert/message dialogs raised by the engine. |
WpfLovPickerDialog | Dialogs/WpfLovPickerDialog.xaml(.cs) | The picker shown when a field's registered LOV is invoked. |
BeepWpfAlertProvider | Forms/FeatureControls/BeepWpfAlertProvider.cs | The provider that routes engine alerts to WpfAlertDialog. |
Platform independence
This project takes zero System.Windows.Forms / System.Drawing references — the one narrow, explicit exception is SimpleItem from the shared Vis.Modules layer. See Architecture for why this is a hard rule, not a convention.