diff --git a/src/Avalonia.Controls/AppBuilderBase.cs b/src/Avalonia.Controls/AppBuilderBase.cs index b098c270a5..97de093a59 100644 --- a/src/Avalonia.Controls/AppBuilderBase.cs +++ b/src/Avalonia.Controls/AppBuilderBase.cs @@ -115,13 +115,16 @@ namespace Avalonia.Controls /// Starts the application with an instance of . /// /// The window type. - public void Start() + /// A delegate that will be called to create a data context for the window (optional). + public void Start(Func dataContextProvider = null) where TMainWindow : Window, new() { Setup(); BeforeStartCallback(Self); var window = new TMainWindow(); + if (dataContextProvider != null) + window.DataContext = dataContextProvider(); window.Show(); Instance.Run(window); }