diff --git a/Directory.Build.props b/Directory.Build.props
index 4b98913e3..84986f31c 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -19,6 +19,12 @@
true
+
+ false
+
+
+ $(DefineConstants);DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+
diff --git a/docfx/articles/dock-reactiveui-di.md b/docfx/articles/dock-reactiveui-di.md
index da95a126b..f80839abd 100644
--- a/docfx/articles/dock-reactiveui-di.md
+++ b/docfx/articles/dock-reactiveui-di.md
@@ -403,7 +403,6 @@ Follow these instructions to create a ReactiveUI application with dependency inj
private static void ConfigureServices(IServiceCollection services)
{
- services.AddSingleton();
services.AddSingleton();
// Register data services
@@ -429,11 +428,17 @@ Follow these instructions to create a ReactiveUI application with dependency inj
}
public static AppBuilder BuildAvaloniaApp(IServiceProvider provider)
- => AppBuilder.Configure(() => provider.GetRequiredService())
+ => AppBuilder.Configure(() => CreateApp(provider))
.UsePlatformDetect()
.WithInterFont()
.UseReactiveUI()
.LogToTrace();
+
+ private static App CreateApp(IServiceProvider provider) => new()
+ {
+ ServiceProvider = provider,
+ ViewLocator = provider.GetRequiredService()
+ };
}
```
@@ -454,40 +459,34 @@ Follow these instructions to create a ReactiveUI application with dependency inj
public partial class App : Application
{
- public IServiceProvider? ServiceProvider { get; }
- private readonly IViewLocator _viewLocator;
+ public IServiceProvider? ServiceProvider { get; init; }
+ public IViewLocator? ViewLocator { get; init; }
- public App()
+ public override void Initialize()
{
- }
+ AvaloniaXamlLoader.Load(this);
- public App(IServiceProvider? serviceProvider, IViewLocator viewLocator)
- {
- ServiceProvider = serviceProvider;
- _viewLocator = viewLocator;
+ if (ViewLocator is not null)
+ {
+ DataTemplates.Insert(0, (IDataTemplate)ViewLocator);
+ }
}
- public override void Initialize()
- {
- AvaloniaXamlLoader.Load(this);
- DataTemplates.Insert(0, (IDataTemplate)_viewLocator);
- }
-
- public override void OnFrameworkInitializationCompleted()
- {
- if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop && ServiceProvider != null)
+ public override void OnFrameworkInitializationCompleted()
{
- var viewModel = ServiceProvider.GetRequiredService();
- var view = ServiceProvider.GetRequiredService>();
- view.ViewModel = viewModel;
- if (view is Window window)
+ if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop && ServiceProvider != null)
{
- desktop.MainWindow = window;
+ var viewModel = ServiceProvider.GetRequiredService();
+ var view = ServiceProvider.GetRequiredService>();
+ view.ViewModel = viewModel;
+ if (view is Window window)
+ {
+ desktop.MainWindow = window;
+ }
}
- }
- base.OnFrameworkInitializationCompleted();
- }
+ base.OnFrameworkInitializationCompleted();
+ }
}
```
diff --git a/samples/BrowserTabTheme/App.axaml.cs b/samples/BrowserTabTheme/App.axaml.cs
index f460202a0..2f0844821 100644
--- a/samples/BrowserTabTheme/App.axaml.cs
+++ b/samples/BrowserTabTheme/App.axaml.cs
@@ -12,7 +12,11 @@ public partial class App : Application
{
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/BrowserTabTheme/BrowserTabTheme.csproj b/samples/BrowserTabTheme/BrowserTabTheme.csproj
index e51e65eba..1f3001260 100644
--- a/samples/BrowserTabTheme/BrowserTabTheme.csproj
+++ b/samples/BrowserTabTheme/BrowserTabTheme.csproj
@@ -6,7 +6,8 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/BrowserTabTheme/MainWindow.axaml.cs b/samples/BrowserTabTheme/MainWindow.axaml.cs
index f32ddee03..275999533 100644
--- a/samples/BrowserTabTheme/MainWindow.axaml.cs
+++ b/samples/BrowserTabTheme/MainWindow.axaml.cs
@@ -6,6 +6,6 @@ public partial class MainWindow : Avalonia.Controls.Window
{
public MainWindow()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockControlPanelsSample/App.axaml.cs b/samples/DockControlPanelsSample/App.axaml.cs
index a424162fc..06320ca7f 100644
--- a/samples/DockControlPanelsSample/App.axaml.cs
+++ b/samples/DockControlPanelsSample/App.axaml.cs
@@ -8,7 +8,11 @@ public partial class App : Application
{
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
@@ -20,4 +24,4 @@ public override void OnFrameworkInitializationCompleted()
base.OnFrameworkInitializationCompleted();
}
-}
\ No newline at end of file
+}
diff --git a/samples/DockControlPanelsSample/DockControlPanelsSample.csproj b/samples/DockControlPanelsSample/DockControlPanelsSample.csproj
index 7785bfb8a..910716715 100644
--- a/samples/DockControlPanelsSample/DockControlPanelsSample.csproj
+++ b/samples/DockControlPanelsSample/DockControlPanelsSample.csproj
@@ -6,7 +6,7 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
diff --git a/samples/DockControlPanelsSample/MainView.axaml.cs b/samples/DockControlPanelsSample/MainView.axaml.cs
index 31cd6abea..e0d18073f 100644
--- a/samples/DockControlPanelsSample/MainView.axaml.cs
+++ b/samples/DockControlPanelsSample/MainView.axaml.cs
@@ -9,9 +9,4 @@ public MainView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
\ No newline at end of file
diff --git a/samples/DockControlPanelsSample/MainWindow.axaml.cs b/samples/DockControlPanelsSample/MainWindow.axaml.cs
index aa4f4c86d..da9312e84 100644
--- a/samples/DockControlPanelsSample/MainWindow.axaml.cs
+++ b/samples/DockControlPanelsSample/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
\ No newline at end of file
diff --git a/samples/DockExternalTabStripsSample/App.axaml.cs b/samples/DockExternalTabStripsSample/App.axaml.cs
index 041fc185b..6dcc1a6df 100644
--- a/samples/DockExternalTabStripsSample/App.axaml.cs
+++ b/samples/DockExternalTabStripsSample/App.axaml.cs
@@ -8,7 +8,11 @@ public partial class App : Application
{
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/DockExternalTabStripsSample/DockExternalTabStripsSample.csproj b/samples/DockExternalTabStripsSample/DockExternalTabStripsSample.csproj
index 2f8c3b16b..1ef76dc82 100644
--- a/samples/DockExternalTabStripsSample/DockExternalTabStripsSample.csproj
+++ b/samples/DockExternalTabStripsSample/DockExternalTabStripsSample.csproj
@@ -6,7 +6,7 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
diff --git a/samples/DockExternalTabStripsSample/MainView.axaml.cs b/samples/DockExternalTabStripsSample/MainView.axaml.cs
index 988466ba8..6b84d0c3b 100644
--- a/samples/DockExternalTabStripsSample/MainView.axaml.cs
+++ b/samples/DockExternalTabStripsSample/MainView.axaml.cs
@@ -41,13 +41,7 @@ protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e
UnregisterExternalSurfaces();
base.OnDetachedFromVisualTree(e);
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
-
- private void RegisterExternalSurfaces()
+private void RegisterExternalSurfaces()
{
if (_surfacesRegistered)
{
diff --git a/samples/DockExternalTabStripsSample/MainWindow.axaml.cs b/samples/DockExternalTabStripsSample/MainWindow.axaml.cs
index 68e9bafb4..42e6138d6 100644
--- a/samples/DockExternalTabStripsSample/MainWindow.axaml.cs
+++ b/samples/DockExternalTabStripsSample/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockFigmaSample/App.axaml.cs b/samples/DockFigmaSample/App.axaml.cs
index 91c46c21e..8db3aad23 100644
--- a/samples/DockFigmaSample/App.axaml.cs
+++ b/samples/DockFigmaSample/App.axaml.cs
@@ -12,11 +12,15 @@
namespace DockFigmaSample;
-public class App : Application
+public partial class App : Application
{
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
RegisterViews();
}
diff --git a/samples/DockFigmaSample/DockFigmaSample.csproj b/samples/DockFigmaSample/DockFigmaSample.csproj
index a686a8e9d..872672396 100644
--- a/samples/DockFigmaSample/DockFigmaSample.csproj
+++ b/samples/DockFigmaSample/DockFigmaSample.csproj
@@ -5,7 +5,8 @@
false
false
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockFigmaSample/Views/Documents/CanvasDocumentView.axaml.cs b/samples/DockFigmaSample/Views/Documents/CanvasDocumentView.axaml.cs
index 2582c0bb9..81cd4d68d 100644
--- a/samples/DockFigmaSample/Views/Documents/CanvasDocumentView.axaml.cs
+++ b/samples/DockFigmaSample/Views/Documents/CanvasDocumentView.axaml.cs
@@ -8,6 +8,6 @@ public partial class CanvasDocumentView : ReactiveUserControl
{
public HomeView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockFigmaSample/Views/MainWindow.axaml.cs b/samples/DockFigmaSample/Views/MainWindow.axaml.cs
index 8db6b60ec..905816353 100644
--- a/samples/DockFigmaSample/Views/MainWindow.axaml.cs
+++ b/samples/DockFigmaSample/Views/MainWindow.axaml.cs
@@ -8,6 +8,6 @@ public partial class MainWindow : ReactiveWindow
{
public MainWindow()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockFigmaSample/Views/Tools/AssetsToolView.axaml.cs b/samples/DockFigmaSample/Views/Tools/AssetsToolView.axaml.cs
index 52d076eb9..a73a01277 100644
--- a/samples/DockFigmaSample/Views/Tools/AssetsToolView.axaml.cs
+++ b/samples/DockFigmaSample/Views/Tools/AssetsToolView.axaml.cs
@@ -8,6 +8,6 @@ public partial class AssetsToolView : ReactiveUserControl
{
public AssetsToolView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockFigmaSample/Views/Tools/CommentsToolView.axaml.cs b/samples/DockFigmaSample/Views/Tools/CommentsToolView.axaml.cs
index 73dd31394..78e645d9b 100644
--- a/samples/DockFigmaSample/Views/Tools/CommentsToolView.axaml.cs
+++ b/samples/DockFigmaSample/Views/Tools/CommentsToolView.axaml.cs
@@ -8,6 +8,6 @@ public partial class CommentsToolView : ReactiveUserControl
{
public LayersToolView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockFigmaSample/Views/Tools/ToolbarToolView.axaml.cs b/samples/DockFigmaSample/Views/Tools/ToolbarToolView.axaml.cs
index 67a4ccc9f..150c80d07 100644
--- a/samples/DockFigmaSample/Views/Tools/ToolbarToolView.axaml.cs
+++ b/samples/DockFigmaSample/Views/Tools/ToolbarToolView.axaml.cs
@@ -8,6 +8,6 @@ public partial class ToolbarToolView : ReactiveUserControl
{
public ToolbarToolView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockFigmaSample/Views/WorkspaceView.axaml.cs b/samples/DockFigmaSample/Views/WorkspaceView.axaml.cs
index 1bffe4287..3bb62bd35 100644
--- a/samples/DockFigmaSample/Views/WorkspaceView.axaml.cs
+++ b/samples/DockFigmaSample/Views/WorkspaceView.axaml.cs
@@ -8,6 +8,6 @@ public partial class WorkspaceView : ReactiveUserControl
{
public WorkspaceView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockInpcSample/App.axaml.cs b/samples/DockInpcSample/App.axaml.cs
index 4baff7334..a722ad31b 100644
--- a/samples/DockInpcSample/App.axaml.cs
+++ b/samples/DockInpcSample/App.axaml.cs
@@ -11,15 +11,18 @@
namespace DockInpcSample;
-public class App : Application
+public partial class App : Application
{
public static IThemeManager? ThemeManager;
public override void Initialize()
{
ThemeManager = new FluentThemeManager();
-
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/DockInpcSample/DockInpcSample.csproj b/samples/DockInpcSample/DockInpcSample.csproj
index 7e24cdc5a..0aef92b5a 100644
--- a/samples/DockInpcSample/DockInpcSample.csproj
+++ b/samples/DockInpcSample/DockInpcSample.csproj
@@ -6,7 +6,8 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockInpcSample/Views/DockableOptionsView.axaml.cs b/samples/DockInpcSample/Views/DockableOptionsView.axaml.cs
index 469287005..51fe1c6a2 100644
--- a/samples/DockInpcSample/Views/DockableOptionsView.axaml.cs
+++ b/samples/DockInpcSample/Views/DockableOptionsView.axaml.cs
@@ -9,9 +9,4 @@ public DockableOptionsView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Documents/DocumentView.axaml.cs b/samples/DockInpcSample/Views/Documents/DocumentView.axaml.cs
index 63335be74..5aaa6ab7e 100644
--- a/samples/DockInpcSample/Views/Documents/DocumentView.axaml.cs
+++ b/samples/DockInpcSample/Views/Documents/DocumentView.axaml.cs
@@ -9,9 +9,4 @@ public DocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/MainView.axaml.cs b/samples/DockInpcSample/Views/MainView.axaml.cs
index 9de8b9b0d..aa9d24f3d 100644
--- a/samples/DockInpcSample/Views/MainView.axaml.cs
+++ b/samples/DockInpcSample/Views/MainView.axaml.cs
@@ -27,13 +27,7 @@ public MainView()
InitializeThemes();
InitializeDockState();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
-
- private void InitializeThemes()
+private void InitializeThemes()
{
var dark = false;
diff --git a/samples/DockInpcSample/Views/MainWindow.axaml.cs b/samples/DockInpcSample/Views/MainWindow.axaml.cs
index d93eb9771..552ac777b 100644
--- a/samples/DockInpcSample/Views/MainWindow.axaml.cs
+++ b/samples/DockInpcSample/Views/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/ProportionalStackPanelView.axaml.cs b/samples/DockInpcSample/Views/ProportionalStackPanelView.axaml.cs
index c00597c38..3b397d704 100644
--- a/samples/DockInpcSample/Views/ProportionalStackPanelView.axaml.cs
+++ b/samples/DockInpcSample/Views/ProportionalStackPanelView.axaml.cs
@@ -9,9 +9,4 @@ public ProportionalStackPanelView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool1View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool1View.axaml.cs
index 548280607..ca5921fbd 100644
--- a/samples/DockInpcSample/Views/Tools/Tool1View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool1View.axaml.cs
@@ -9,9 +9,4 @@ public Tool1View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool2View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool2View.axaml.cs
index d978bd228..32db6dc72 100644
--- a/samples/DockInpcSample/Views/Tools/Tool2View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool2View.axaml.cs
@@ -9,9 +9,4 @@ public Tool2View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool3View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool3View.axaml.cs
index 169a275e7..6d48354c6 100644
--- a/samples/DockInpcSample/Views/Tools/Tool3View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool3View.axaml.cs
@@ -9,9 +9,4 @@ public Tool3View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool4View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool4View.axaml.cs
index 1ca33c15b..82de1944f 100644
--- a/samples/DockInpcSample/Views/Tools/Tool4View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool4View.axaml.cs
@@ -9,9 +9,4 @@ public Tool4View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool5View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool5View.axaml.cs
index 4f16bdfd0..73cfd618a 100644
--- a/samples/DockInpcSample/Views/Tools/Tool5View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool5View.axaml.cs
@@ -9,9 +9,4 @@ public Tool5View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool6View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool6View.axaml.cs
index c5293ce58..0452c0cbc 100644
--- a/samples/DockInpcSample/Views/Tools/Tool6View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool6View.axaml.cs
@@ -9,9 +9,4 @@ public Tool6View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool7View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool7View.axaml.cs
index dfd049c65..b7baa6769 100644
--- a/samples/DockInpcSample/Views/Tools/Tool7View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool7View.axaml.cs
@@ -9,9 +9,4 @@ public Tool7View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Tools/Tool8View.axaml.cs b/samples/DockInpcSample/Views/Tools/Tool8View.axaml.cs
index d44836ade..cd4f0e4ab 100644
--- a/samples/DockInpcSample/Views/Tools/Tool8View.axaml.cs
+++ b/samples/DockInpcSample/Views/Tools/Tool8View.axaml.cs
@@ -9,9 +9,4 @@ public Tool8View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Views/DashboardView.axaml.cs b/samples/DockInpcSample/Views/Views/DashboardView.axaml.cs
index 9697f0108..f9d2fb6fb 100644
--- a/samples/DockInpcSample/Views/Views/DashboardView.axaml.cs
+++ b/samples/DockInpcSample/Views/Views/DashboardView.axaml.cs
@@ -9,9 +9,4 @@ public DashboardView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockInpcSample/Views/Views/HomeView.axaml.cs b/samples/DockInpcSample/Views/Views/HomeView.axaml.cs
index 6ab4e289d..33a7577d2 100644
--- a/samples/DockInpcSample/Views/Views/HomeView.axaml.cs
+++ b/samples/DockInpcSample/Views/Views/HomeView.axaml.cs
@@ -9,9 +9,4 @@ public HomeView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/App.axaml.cs b/samples/DockMvvmSample/App.axaml.cs
index 38b8ece9d..26c6fb359 100644
--- a/samples/DockMvvmSample/App.axaml.cs
+++ b/samples/DockMvvmSample/App.axaml.cs
@@ -12,15 +12,18 @@
namespace DockMvvmSample;
-public class App : Application
+public partial class App : Application
{
public static IDockThemeManager? ThemeManager;
public override void Initialize()
{
ThemeManager = new DockFluentThemeManager();
-
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/DockMvvmSample/DockMvvmSample.csproj b/samples/DockMvvmSample/DockMvvmSample.csproj
index 0c9d99ed0..56bb857b0 100644
--- a/samples/DockMvvmSample/DockMvvmSample.csproj
+++ b/samples/DockMvvmSample/DockMvvmSample.csproj
@@ -6,7 +6,8 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockMvvmSample/Views/DockableOptionsView.axaml.cs b/samples/DockMvvmSample/Views/DockableOptionsView.axaml.cs
index e253a367b..604de63c9 100644
--- a/samples/DockMvvmSample/Views/DockableOptionsView.axaml.cs
+++ b/samples/DockMvvmSample/Views/DockableOptionsView.axaml.cs
@@ -32,9 +32,4 @@ public DockableOptionsView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Documents/DocumentView.axaml.cs b/samples/DockMvvmSample/Views/Documents/DocumentView.axaml.cs
index ab9f27a9a..618d7f4c6 100644
--- a/samples/DockMvvmSample/Views/Documents/DocumentView.axaml.cs
+++ b/samples/DockMvvmSample/Views/Documents/DocumentView.axaml.cs
@@ -9,9 +9,4 @@ public DocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/MainView.axaml.cs b/samples/DockMvvmSample/Views/MainView.axaml.cs
index 1f52dd224..573354621 100644
--- a/samples/DockMvvmSample/Views/MainView.axaml.cs
+++ b/samples/DockMvvmSample/Views/MainView.axaml.cs
@@ -29,12 +29,7 @@ public MainView()
InitializeThemes();
InitializeDockState();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
-
+
private void InitializeThemes()
{
var themeManager = App.ThemeManager;
diff --git a/samples/DockMvvmSample/Views/MainWindow.axaml.cs b/samples/DockMvvmSample/Views/MainWindow.axaml.cs
index 618cdb778..51cc31be8 100644
--- a/samples/DockMvvmSample/Views/MainWindow.axaml.cs
+++ b/samples/DockMvvmSample/Views/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/ProportionalStackPanelView.axaml.cs b/samples/DockMvvmSample/Views/ProportionalStackPanelView.axaml.cs
index 0d949694b..8453cbff0 100644
--- a/samples/DockMvvmSample/Views/ProportionalStackPanelView.axaml.cs
+++ b/samples/DockMvvmSample/Views/ProportionalStackPanelView.axaml.cs
@@ -9,9 +9,4 @@ public ProportionalStackPanelView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool1View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool1View.axaml.cs
index ea95fa35b..a9551048e 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool1View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool1View.axaml.cs
@@ -9,9 +9,4 @@ public Tool1View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool2View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool2View.axaml.cs
index c7f2f8d1c..4b0a4e9ba 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool2View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool2View.axaml.cs
@@ -9,9 +9,4 @@ public Tool2View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool3View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool3View.axaml.cs
index b417cdd76..7fa24fe76 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool3View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool3View.axaml.cs
@@ -9,9 +9,4 @@ public Tool3View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool4View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool4View.axaml.cs
index 9705e111c..1858da5cf 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool4View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool4View.axaml.cs
@@ -9,9 +9,4 @@ public Tool4View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool5View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool5View.axaml.cs
index c4523073d..ad0f84a83 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool5View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool5View.axaml.cs
@@ -9,9 +9,4 @@ public Tool5View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool6View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool6View.axaml.cs
index 83f51abe8..5d7d45b03 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool6View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool6View.axaml.cs
@@ -9,9 +9,4 @@ public Tool6View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool7View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool7View.axaml.cs
index 49d45ead3..91ef10a83 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool7View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool7View.axaml.cs
@@ -9,9 +9,4 @@ public Tool7View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Tools/Tool8View.axaml.cs b/samples/DockMvvmSample/Views/Tools/Tool8View.axaml.cs
index c586737f1..1e77489c1 100644
--- a/samples/DockMvvmSample/Views/Tools/Tool8View.axaml.cs
+++ b/samples/DockMvvmSample/Views/Tools/Tool8View.axaml.cs
@@ -9,9 +9,4 @@ public Tool8View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Views/DashboardView.axaml.cs b/samples/DockMvvmSample/Views/Views/DashboardView.axaml.cs
index 774f7228a..cf523d0e9 100644
--- a/samples/DockMvvmSample/Views/Views/DashboardView.axaml.cs
+++ b/samples/DockMvvmSample/Views/Views/DashboardView.axaml.cs
@@ -9,9 +9,4 @@ public DashboardView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockMvvmSample/Views/Views/HomeView.axaml.cs b/samples/DockMvvmSample/Views/Views/HomeView.axaml.cs
index d5d952367..d980ee0b3 100644
--- a/samples/DockMvvmSample/Views/Views/HomeView.axaml.cs
+++ b/samples/DockMvvmSample/Views/Views/HomeView.axaml.cs
@@ -9,9 +9,4 @@ public HomeView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockOfficeSample/App.axaml.cs b/samples/DockOfficeSample/App.axaml.cs
index 41a515325..563855608 100644
--- a/samples/DockOfficeSample/App.axaml.cs
+++ b/samples/DockOfficeSample/App.axaml.cs
@@ -14,11 +14,15 @@
namespace DockOfficeSample;
-public class App : Application
+public partial class App : Application
{
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
RegisterViews();
}
diff --git a/samples/DockOfficeSample/DockOfficeSample.csproj b/samples/DockOfficeSample/DockOfficeSample.csproj
index a686a8e9d..872672396 100644
--- a/samples/DockOfficeSample/DockOfficeSample.csproj
+++ b/samples/DockOfficeSample/DockOfficeSample.csproj
@@ -5,7 +5,8 @@
false
false
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockOfficeSample/Views/Documents/OfficeDocumentPageView.axaml.cs b/samples/DockOfficeSample/Views/Documents/OfficeDocumentPageView.axaml.cs
index 5fcbec072..016cedde7 100644
--- a/samples/DockOfficeSample/Views/Documents/OfficeDocumentPageView.axaml.cs
+++ b/samples/DockOfficeSample/Views/Documents/OfficeDocumentPageView.axaml.cs
@@ -8,6 +8,6 @@ public partial class OfficeDocumentPageView : ReactiveUserControl
{
public OfficeDocumentView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockOfficeSample/Views/HomeView.axaml.cs b/samples/DockOfficeSample/Views/HomeView.axaml.cs
index 7ff25a1ab..9db2677e5 100644
--- a/samples/DockOfficeSample/Views/HomeView.axaml.cs
+++ b/samples/DockOfficeSample/Views/HomeView.axaml.cs
@@ -8,6 +8,6 @@ public partial class HomeView : ReactiveUserControl
{
public HomeView()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockOfficeSample/Views/MainWindow.axaml.cs b/samples/DockOfficeSample/Views/MainWindow.axaml.cs
index f794ffa57..d6b35d8f6 100644
--- a/samples/DockOfficeSample/Views/MainWindow.axaml.cs
+++ b/samples/DockOfficeSample/Views/MainWindow.axaml.cs
@@ -8,6 +8,6 @@ public partial class MainWindow : ReactiveWindow
{
public MainWindow()
{
- AvaloniaXamlLoader.Load(this);
+ InitializeComponent();
}
}
diff --git a/samples/DockOfficeSample/Views/Tools/InspectorSectionView.axaml.cs b/samples/DockOfficeSample/Views/Tools/InspectorSectionView.axaml.cs
index 675aecd43..0ea3cabfe 100644
--- a/samples/DockOfficeSample/Views/Tools/InspectorSectionView.axaml.cs
+++ b/samples/DockOfficeSample/Views/Tools/InspectorSectionView.axaml.cs
@@ -8,6 +8,6 @@ public partial class InspectorSectionView : ReactiveUserControlFalse
False
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockPrismSample/Views/DockableOptionsView.axaml.cs b/samples/DockPrismSample/Views/DockableOptionsView.axaml.cs
index 893456618..f538e3284 100644
--- a/samples/DockPrismSample/Views/DockableOptionsView.axaml.cs
+++ b/samples/DockPrismSample/Views/DockableOptionsView.axaml.cs
@@ -9,9 +9,4 @@ public DockableOptionsView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Documents/DocumentView.axaml.cs b/samples/DockPrismSample/Views/Documents/DocumentView.axaml.cs
index 554ce2b20..683564317 100644
--- a/samples/DockPrismSample/Views/Documents/DocumentView.axaml.cs
+++ b/samples/DockPrismSample/Views/Documents/DocumentView.axaml.cs
@@ -9,9 +9,4 @@ public DocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/MainView.axaml.cs b/samples/DockPrismSample/Views/MainView.axaml.cs
index 9769181e6..8d3de9432 100644
--- a/samples/DockPrismSample/Views/MainView.axaml.cs
+++ b/samples/DockPrismSample/Views/MainView.axaml.cs
@@ -27,13 +27,7 @@ public MainView()
InitializeThemes();
InitializeDockState();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
-
- private void InitializeThemes()
+private void InitializeThemes()
{
var dark = false;
diff --git a/samples/DockPrismSample/Views/MainWindow.axaml.cs b/samples/DockPrismSample/Views/MainWindow.axaml.cs
index 29431718e..0c58e652a 100644
--- a/samples/DockPrismSample/Views/MainWindow.axaml.cs
+++ b/samples/DockPrismSample/Views/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/ProportionalStackPanelView.axaml.cs b/samples/DockPrismSample/Views/ProportionalStackPanelView.axaml.cs
index a443c4f8f..795eb5632 100644
--- a/samples/DockPrismSample/Views/ProportionalStackPanelView.axaml.cs
+++ b/samples/DockPrismSample/Views/ProportionalStackPanelView.axaml.cs
@@ -9,9 +9,4 @@ public ProportionalStackPanelView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool1View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool1View.axaml.cs
index 20c59c52a..2f57d34ff 100644
--- a/samples/DockPrismSample/Views/Tools/Tool1View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool1View.axaml.cs
@@ -9,9 +9,4 @@ public Tool1View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool2View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool2View.axaml.cs
index 98ed8992c..a8b3eec3b 100644
--- a/samples/DockPrismSample/Views/Tools/Tool2View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool2View.axaml.cs
@@ -9,9 +9,4 @@ public Tool2View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool3View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool3View.axaml.cs
index b3806c2de..2bac43d71 100644
--- a/samples/DockPrismSample/Views/Tools/Tool3View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool3View.axaml.cs
@@ -9,9 +9,4 @@ public Tool3View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool4View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool4View.axaml.cs
index 5cc94cb12..fe39076a8 100644
--- a/samples/DockPrismSample/Views/Tools/Tool4View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool4View.axaml.cs
@@ -9,9 +9,4 @@ public Tool4View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool5View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool5View.axaml.cs
index b27b32bb7..5f9965a5c 100644
--- a/samples/DockPrismSample/Views/Tools/Tool5View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool5View.axaml.cs
@@ -9,9 +9,4 @@ public Tool5View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool6View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool6View.axaml.cs
index 676397d37..ca0480451 100644
--- a/samples/DockPrismSample/Views/Tools/Tool6View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool6View.axaml.cs
@@ -9,9 +9,4 @@ public Tool6View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool7View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool7View.axaml.cs
index 64883e970..ace4fdc24 100644
--- a/samples/DockPrismSample/Views/Tools/Tool7View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool7View.axaml.cs
@@ -9,9 +9,4 @@ public Tool7View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Tools/Tool8View.axaml.cs b/samples/DockPrismSample/Views/Tools/Tool8View.axaml.cs
index 1c86de71b..51e165cc2 100644
--- a/samples/DockPrismSample/Views/Tools/Tool8View.axaml.cs
+++ b/samples/DockPrismSample/Views/Tools/Tool8View.axaml.cs
@@ -9,9 +9,4 @@ public Tool8View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Views/DashboardView.axaml.cs b/samples/DockPrismSample/Views/Views/DashboardView.axaml.cs
index aaf9c2598..5c8a74ca8 100644
--- a/samples/DockPrismSample/Views/Views/DashboardView.axaml.cs
+++ b/samples/DockPrismSample/Views/Views/DashboardView.axaml.cs
@@ -9,9 +9,4 @@ public DashboardView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockPrismSample/Views/Views/HomeView.axaml.cs b/samples/DockPrismSample/Views/Views/HomeView.axaml.cs
index eadbdf2e4..25ac93542 100644
--- a/samples/DockPrismSample/Views/Views/HomeView.axaml.cs
+++ b/samples/DockPrismSample/Views/Views/HomeView.axaml.cs
@@ -9,9 +9,4 @@ public HomeView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/App.axaml.cs b/samples/DockReactivePropertySample/App.axaml.cs
index 8ad3c94c1..c4b77bef6 100644
--- a/samples/DockReactivePropertySample/App.axaml.cs
+++ b/samples/DockReactivePropertySample/App.axaml.cs
@@ -11,15 +11,18 @@
namespace DockReactivePropertySample;
-public class App : Application
+public partial class App : Application
{
public static IThemeManager? ThemeManager;
public override void Initialize()
{
ThemeManager = new FluentThemeManager();
-
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/DockReactivePropertySample/DockReactivePropertySample.csproj b/samples/DockReactivePropertySample/DockReactivePropertySample.csproj
index 5261e4dde..41f46a073 100644
--- a/samples/DockReactivePropertySample/DockReactivePropertySample.csproj
+++ b/samples/DockReactivePropertySample/DockReactivePropertySample.csproj
@@ -6,7 +6,8 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockReactivePropertySample/Views/DockableOptionsView.axaml.cs b/samples/DockReactivePropertySample/Views/DockableOptionsView.axaml.cs
index cde92a6c5..735d8c15f 100644
--- a/samples/DockReactivePropertySample/Views/DockableOptionsView.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/DockableOptionsView.axaml.cs
@@ -9,9 +9,4 @@ public DockableOptionsView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Documents/DocumentView.axaml.cs b/samples/DockReactivePropertySample/Views/Documents/DocumentView.axaml.cs
index 0611864d0..87c7f9463 100644
--- a/samples/DockReactivePropertySample/Views/Documents/DocumentView.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Documents/DocumentView.axaml.cs
@@ -9,9 +9,4 @@ public DocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/MainView.axaml.cs b/samples/DockReactivePropertySample/Views/MainView.axaml.cs
index e98added3..7a09c16ea 100644
--- a/samples/DockReactivePropertySample/Views/MainView.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/MainView.axaml.cs
@@ -27,13 +27,7 @@ public MainView()
InitializeThemes();
InitializeDockState();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
-
- private void InitializeThemes()
+private void InitializeThemes()
{
var dark = false;
diff --git a/samples/DockReactivePropertySample/Views/MainWindow.axaml.cs b/samples/DockReactivePropertySample/Views/MainWindow.axaml.cs
index b4fe5734d..97ff1c408 100644
--- a/samples/DockReactivePropertySample/Views/MainWindow.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/ProportionalStackPanelView.axaml.cs b/samples/DockReactivePropertySample/Views/ProportionalStackPanelView.axaml.cs
index 4927dffe1..05856668c 100644
--- a/samples/DockReactivePropertySample/Views/ProportionalStackPanelView.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/ProportionalStackPanelView.axaml.cs
@@ -9,9 +9,4 @@ public ProportionalStackPanelView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool1View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool1View.axaml.cs
index a9d2e24be..819c8299a 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool1View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool1View.axaml.cs
@@ -9,9 +9,4 @@ public Tool1View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool2View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool2View.axaml.cs
index e3ed57728..86b1c2716 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool2View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool2View.axaml.cs
@@ -9,9 +9,4 @@ public Tool2View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool3View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool3View.axaml.cs
index d7e96baf5..58061df44 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool3View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool3View.axaml.cs
@@ -9,9 +9,4 @@ public Tool3View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool4View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool4View.axaml.cs
index 1421f6f83..6399ff472 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool4View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool4View.axaml.cs
@@ -9,9 +9,4 @@ public Tool4View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool5View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool5View.axaml.cs
index 6b0c00f66..b21fd67dc 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool5View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool5View.axaml.cs
@@ -9,9 +9,4 @@ public Tool5View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool6View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool6View.axaml.cs
index c3d57eb19..632e8b7c6 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool6View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool6View.axaml.cs
@@ -9,9 +9,4 @@ public Tool6View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool7View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool7View.axaml.cs
index 320465bed..370bb32b2 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool7View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool7View.axaml.cs
@@ -9,9 +9,4 @@ public Tool7View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Tools/Tool8View.axaml.cs b/samples/DockReactivePropertySample/Views/Tools/Tool8View.axaml.cs
index bcc10dbeb..6631e5ef3 100644
--- a/samples/DockReactivePropertySample/Views/Tools/Tool8View.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Tools/Tool8View.axaml.cs
@@ -9,9 +9,4 @@ public Tool8View()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Views/DashboardView.axaml.cs b/samples/DockReactivePropertySample/Views/Views/DashboardView.axaml.cs
index 7341d5cd4..c8ad3d959 100644
--- a/samples/DockReactivePropertySample/Views/Views/DashboardView.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Views/DashboardView.axaml.cs
@@ -9,9 +9,4 @@ public DashboardView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactivePropertySample/Views/Views/HomeView.axaml.cs b/samples/DockReactivePropertySample/Views/Views/HomeView.axaml.cs
index 220f418a7..0a2d8e254 100644
--- a/samples/DockReactivePropertySample/Views/Views/HomeView.axaml.cs
+++ b/samples/DockReactivePropertySample/Views/Views/HomeView.axaml.cs
@@ -9,9 +9,4 @@ public HomeView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/App.axaml.cs b/samples/DockReactiveUICanonicalSample/App.axaml.cs
index 9c50759a4..b0e05990e 100644
--- a/samples/DockReactiveUICanonicalSample/App.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/App.axaml.cs
@@ -22,13 +22,17 @@
namespace DockReactiveUICanonicalSample;
-public class App : Application
+public partial class App : Application
{
public static IViewLocator ViewLocator { get; } = new ReactiveViewLocator();
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
RegisterDockableTemplate();
RegisterAppServices();
RegisterViews();
diff --git a/samples/DockReactiveUICanonicalSample/DockReactiveUICanonicalSample.csproj b/samples/DockReactiveUICanonicalSample/DockReactiveUICanonicalSample.csproj
index 479f6474e..80cb7aa00 100644
--- a/samples/DockReactiveUICanonicalSample/DockReactiveUICanonicalSample.csproj
+++ b/samples/DockReactiveUICanonicalSample/DockReactiveUICanonicalSample.csproj
@@ -5,7 +5,8 @@
false
false
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockReactiveUICanonicalSample/Views/Dialogs/MessageDialogView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Dialogs/MessageDialogView.axaml.cs
index 264799f67..123225ff3 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Dialogs/MessageDialogView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Dialogs/MessageDialogView.axaml.cs
@@ -10,9 +10,4 @@ public MessageDialogView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Dialogs/TextPromptDialogView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Dialogs/TextPromptDialogView.axaml.cs
index ae4ecaf2b..15e39e7cb 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Dialogs/TextPromptDialogView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Dialogs/TextPromptDialogView.axaml.cs
@@ -10,9 +10,4 @@ public TextPromptDialogView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/DockView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/DockView.axaml.cs
index e4099bfc3..075ce414d 100644
--- a/samples/DockReactiveUICanonicalSample/Views/DockView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/DockView.axaml.cs
@@ -10,9 +10,4 @@ public DockView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileDocumentView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileDocumentView.axaml.cs
index b13f94ebd..e7f5c6dc4 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileDocumentView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileDocumentView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectFileDocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileEditorDocumentView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileEditorDocumentView.axaml.cs
index 752a8e391..996da548b 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileEditorDocumentView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFileEditorDocumentView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectFileEditorDocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFilesDocumentView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFilesDocumentView.axaml.cs
index 05308e2af..3937cea72 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFilesDocumentView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectFilesDocumentView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectFilesDocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectListDocumentView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectListDocumentView.axaml.cs
index 3b2541427..54363967b 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectListDocumentView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Documents/ProjectListDocumentView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectListDocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/MainWindow.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/MainWindow.axaml.cs
index 2ecd7d648..35e45e4ef 100644
--- a/samples/DockReactiveUICanonicalSample/Views/MainWindow.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/MainWindow.axaml.cs
@@ -9,9 +9,4 @@ public MainWindow()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilePageView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilePageView.axaml.cs
index 161dbc2b4..9deff6603 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilePageView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilePageView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectFilePageView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilesPageView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilesPageView.axaml.cs
index 0b4b5370f..908c3877c 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilesPageView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectFilesPageView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectFilesPageView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectListPageView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectListPageView.axaml.cs
index 83fd99af0..e921b3f98 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectListPageView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Pages/ProjectListPageView.axaml.cs
@@ -10,9 +10,4 @@ public ProjectListPageView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsPageView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsPageView.axaml.cs
index ad0b5e288..d3f5cc4e7 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsPageView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsPageView.axaml.cs
@@ -10,9 +10,4 @@ public FileActionsPageView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsToolView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsToolView.axaml.cs
index ff31b7a1f..4e1573ccd 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsToolView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Workspace/FileActionsToolView.axaml.cs
@@ -10,9 +10,4 @@ public FileActionsToolView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonPageView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonPageView.axaml.cs
index 63c78e01b..50ba09ed0 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonPageView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonPageView.axaml.cs
@@ -10,9 +10,4 @@ public RibbonPageView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonToolView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonToolView.axaml.cs
index 27c469163..59507eb24 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonToolView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Workspace/RibbonToolView.axaml.cs
@@ -10,9 +10,4 @@ public RibbonToolView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelPageView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelPageView.axaml.cs
index e60db4af1..22b222859 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelPageView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelPageView.axaml.cs
@@ -10,9 +10,4 @@ public ToolPanelPageView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelView.axaml.cs b/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelView.axaml.cs
index 40c282bc9..fe5963e65 100644
--- a/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelView.axaml.cs
+++ b/samples/DockReactiveUICanonicalSample/Views/Workspace/ToolPanelView.axaml.cs
@@ -10,9 +10,4 @@ public ToolPanelView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUIDiSample/App.axaml.cs b/samples/DockReactiveUIDiSample/App.axaml.cs
index 333e09003..cb3cedc4d 100644
--- a/samples/DockReactiveUIDiSample/App.axaml.cs
+++ b/samples/DockReactiveUIDiSample/App.axaml.cs
@@ -15,26 +15,20 @@ namespace DockReactiveUIDiSample;
public partial class App : Application
{
- public IServiceProvider? ServiceProvider { get; }
- private readonly IViewLocator _viewLocator;
-
- // ReSharper disable once UnusedMember.Global
-#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring as nullable.
- public App()
-#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring as nullable.
- {
- }
-
- public App(IServiceProvider? serviceProvider, IViewLocator viewLocator)
- {
- ServiceProvider = serviceProvider;
- _viewLocator = viewLocator;
- }
+ public IServiceProvider? ServiceProvider { get; init; }
+ public IViewLocator? ViewLocator { get; init; }
public override void Initialize()
{
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
- DataTemplates.Insert(0, (IDataTemplate)_viewLocator);
+#endif
+ if (ViewLocator is not null)
+ {
+ DataTemplates.Insert(0, (IDataTemplate)ViewLocator);
+ }
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/DockReactiveUIDiSample/DockReactiveUIDiSample.csproj b/samples/DockReactiveUIDiSample/DockReactiveUIDiSample.csproj
index 88b3abd07..a5a26cc89 100644
--- a/samples/DockReactiveUIDiSample/DockReactiveUIDiSample.csproj
+++ b/samples/DockReactiveUIDiSample/DockReactiveUIDiSample.csproj
@@ -5,7 +5,7 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
diff --git a/samples/DockReactiveUIDiSample/Program.cs b/samples/DockReactiveUIDiSample/Program.cs
index d7fec9c22..e7aa72584 100644
--- a/samples/DockReactiveUIDiSample/Program.cs
+++ b/samples/DockReactiveUIDiSample/Program.cs
@@ -33,7 +33,6 @@ private static ServiceProvider Initialize()
private static void ConfigureServices(IServiceCollection services)
{
- services.AddSingleton();
services.AddSingleton();
services.AddSingleton();
services.AddTransient();
@@ -47,16 +46,26 @@ private static void ConfigureServices(IServiceCollection services)
}
public static AppBuilder BuildAvaloniaApp(IServiceProvider provider)
- => AppBuilder.Configure(provider.GetRequiredService)
+ => AppBuilder.Configure(() => CreateApp(provider))
.UsePlatformDetect()
.WithInterFont()
.UseReactiveUI()
.LogToTrace();
public static AppBuilder BuildAvaloniaApp()
- => AppBuilder.Configure(() => Initialize().GetRequiredService())
+ => AppBuilder.Configure(() =>
+ {
+ var provider = Initialize();
+ return CreateApp(provider);
+ })
.UsePlatformDetect()
.WithInterFont()
.UseReactiveUI()
.LogToTrace();
+
+ private static App CreateApp(IServiceProvider provider) => new()
+ {
+ ServiceProvider = provider,
+ ViewLocator = provider.GetRequiredService()
+ };
}
diff --git a/samples/DockReactiveUIDiSample/Views/Documents/DocumentView.axaml.cs b/samples/DockReactiveUIDiSample/Views/Documents/DocumentView.axaml.cs
index 6070a1bcb..85eaa62f8 100644
--- a/samples/DockReactiveUIDiSample/Views/Documents/DocumentView.axaml.cs
+++ b/samples/DockReactiveUIDiSample/Views/Documents/DocumentView.axaml.cs
@@ -10,10 +10,5 @@ public DocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUIDiSample/Views/MainWindow.axaml.cs b/samples/DockReactiveUIDiSample/Views/MainWindow.axaml.cs
index 53218681f..076e5d128 100644
--- a/samples/DockReactiveUIDiSample/Views/MainWindow.axaml.cs
+++ b/samples/DockReactiveUIDiSample/Views/MainWindow.axaml.cs
@@ -7,19 +7,8 @@ namespace DockReactiveUIDiSample.Views;
public partial class MainWindow : ReactiveWindow
{
-
public MainWindow()
{
InitializeComponent();
-#if DEBUG
- this.AttachDevTools();
-#endif
- }
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
}
-
}
-
diff --git a/samples/DockReactiveUIDiSample/Views/Tools/ToolView.axaml.cs b/samples/DockReactiveUIDiSample/Views/Tools/ToolView.axaml.cs
index c65a139db..2ba57f96c 100644
--- a/samples/DockReactiveUIDiSample/Views/Tools/ToolView.axaml.cs
+++ b/samples/DockReactiveUIDiSample/Views/Tools/ToolView.axaml.cs
@@ -10,10 +10,5 @@ public ToolView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUIManagedSample/App.axaml.cs b/samples/DockReactiveUIManagedSample/App.axaml.cs
index bd96bb4b9..06929e5f2 100644
--- a/samples/DockReactiveUIManagedSample/App.axaml.cs
+++ b/samples/DockReactiveUIManagedSample/App.axaml.cs
@@ -13,15 +13,18 @@ namespace DockReactiveUIManagedSample;
[RequiresUnreferencedCode("Requires unreferenced code for MainWindowViewModel.")]
[RequiresDynamicCode("Requires unreferenced code for MainWindowViewModel.")]
-public class App : Application
+public partial class App : Application
{
public static IThemeManager? ThemeManager;
public override void Initialize()
{
ThemeManager = new FluentThemeManager();
-
+#if DOCK_USE_GENERATED_APP_INITIALIZE_COMPONENT
+ InitializeComponent();
+#else
AvaloniaXamlLoader.Load(this);
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/samples/DockReactiveUIManagedSample/DockReactiveUIManagedSample.csproj b/samples/DockReactiveUIManagedSample/DockReactiveUIManagedSample.csproj
index 2e903b57b..1dc097293 100644
--- a/samples/DockReactiveUIManagedSample/DockReactiveUIManagedSample.csproj
+++ b/samples/DockReactiveUIManagedSample/DockReactiveUIManagedSample.csproj
@@ -6,7 +6,8 @@
False
False
enable
- OnlyProperties
+ InitializeComponent
+ true
true
$(BaseIntermediateOutputPath)\GeneratedFiles
diff --git a/samples/DockReactiveUIManagedSample/Views/DockableOptionsView.axaml.cs b/samples/DockReactiveUIManagedSample/Views/DockableOptionsView.axaml.cs
index 28b6508d0..f222280bd 100644
--- a/samples/DockReactiveUIManagedSample/Views/DockableOptionsView.axaml.cs
+++ b/samples/DockReactiveUIManagedSample/Views/DockableOptionsView.axaml.cs
@@ -9,9 +9,4 @@ public DockableOptionsView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUIManagedSample/Views/Documents/DocumentView.axaml.cs b/samples/DockReactiveUIManagedSample/Views/Documents/DocumentView.axaml.cs
index ee5fe4153..cfbd5aa4d 100644
--- a/samples/DockReactiveUIManagedSample/Views/Documents/DocumentView.axaml.cs
+++ b/samples/DockReactiveUIManagedSample/Views/Documents/DocumentView.axaml.cs
@@ -9,9 +9,4 @@ public DocumentView()
{
InitializeComponent();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
}
diff --git a/samples/DockReactiveUIManagedSample/Views/MainView.axaml.cs b/samples/DockReactiveUIManagedSample/Views/MainView.axaml.cs
index 3ba6010f1..7b1f8948b 100644
--- a/samples/DockReactiveUIManagedSample/Views/MainView.axaml.cs
+++ b/samples/DockReactiveUIManagedSample/Views/MainView.axaml.cs
@@ -13,13 +13,7 @@ public MainView()
InitializeComponent();
InitializeThemes();
}
-
- private void InitializeComponent()
- {
- AvaloniaXamlLoader.Load(this);
- }
-
- private void InitializeThemes()
+private void InitializeThemes()
{
var dark = false;
var theme = this.Find