diff --git a/Source/Directory.Build.props b/Source/Directory.Build.props
index 3f15db6..1f55fde 100644
--- a/Source/Directory.Build.props
+++ b/Source/Directory.Build.props
@@ -1,6 +1,6 @@
- 11.0.0
- 2.1.2
+ 12.0.2
+ 2.2.0
\ No newline at end of file
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/App.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/App.axaml.cs
index 3d40e69..a51127a 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/App.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/App.axaml.cs
@@ -12,37 +12,38 @@ public class App : Application
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
- base.Initialize();
+#if DEBUG
+ this.AttachDeveloperTools();
+#endif
}
public override void OnFrameworkInitializationCompleted()
{
- if (!(ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop))
+ if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
- throw new PlatformNotSupportedException();
+ desktop.MainWindow = new MainWindow();
}
- desktop.MainWindow = new MainWindow();
-
base.OnFrameworkInitializationCompleted();
}
+ }
- static void Main(string[] args)
+ public class Program
+ {
+ public static AppBuilder BuildAvaloniaApp()
{
OxyPlotModule.EnsureLoaded();
- AppBuilder.Configure()
- .UsePlatformDetect()
+ var builder = AppBuilder.Configure()
+ .UsePlatformDetect();
#if DEBUG
- .LogToTrace()
+ builder.LogToTrace();
#endif
- .StartWithClassicDesktopLifetime(args);
+ return builder;
}
- public static void AttachDevTools(Window window)
+ public static void Main(string[] args)
{
-#if DEBUG
- DevToolsExtensions.AttachDevTools(window);
-#endif
- }
+ BuildAvaloniaApp().StartWithClassicDesktopLifetime(args);
+ }
}
}
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/AvaloniaExamples.csproj b/Source/Examples/Avalonia/AvaloniaExamples/AvaloniaExamples.csproj
index 3540b23..2342f45 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/AvaloniaExamples.csproj
+++ b/Source/Examples/Avalonia/AvaloniaExamples/AvaloniaExamples.csproj
@@ -1,16 +1,17 @@
- net8.0
+ net10.0
WinExe
+ false
-
+
-
+
\ No newline at end of file
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/Examples/AnimationsDemo/MainWindow.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/Examples/AnimationsDemo/MainWindow.axaml.cs
index 5add1fc..c0b1fd7 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/Examples/AnimationsDemo/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/Examples/AnimationsDemo/MainWindow.axaml.cs
@@ -22,7 +22,6 @@ public partial class MainWindow : Avalonia.Controls.Window
public MainWindow()
{
this.InitializeComponent();
- App.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/Examples/BarSeriesDemo/MainWindow.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/Examples/BarSeriesDemo/MainWindow.axaml.cs
index e7b290a..193a7d0 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/Examples/BarSeriesDemo/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/Examples/BarSeriesDemo/MainWindow.axaml.cs
@@ -50,8 +50,6 @@ public MainWindow()
this.DataContext = new { Model1 = tmp, Items = items };
this.InitializeComponent();
-
- App.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/Examples/DataTemplateDemo/PlotViewDataTemplateWindow.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/Examples/DataTemplateDemo/PlotViewDataTemplateWindow.axaml.cs
index 75e9beb..dfaccca 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/Examples/DataTemplateDemo/PlotViewDataTemplateWindow.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/Examples/DataTemplateDemo/PlotViewDataTemplateWindow.axaml.cs
@@ -43,7 +43,6 @@ public PlotViewDataTemplateWindow()
private void InitializeComponent()
{
Avalonia.Markup.Xaml.AvaloniaXamlLoader.Load(this);
- App.AttachDevTools(this);
}
private static Random r = new Random(13);
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow.axaml.cs
index 8bca701..d085f83 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow.axaml.cs
@@ -23,7 +23,6 @@ public MainWindow()
{
this.InitializeComponent();
this.DataContext = new { Model1 = new ViewModel { Title = "Plot1" }, Model2 = new ViewModel { Title = "Plot2" } };
- App.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow2.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow2.axaml.cs
index a166c1e..9d5123c 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow2.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/Examples/UserControlDemo/MainWindow2.axaml.cs
@@ -24,7 +24,6 @@ public MainWindow2()
{
this.InitializeComponent();
this.DataContext = new { Models = new List { new ViewModel { Title = "Plot1" }, new ViewModel { Title = "Plot2" } } };
- App.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/AvaloniaExamples/MainWindow.axaml.cs b/Source/Examples/Avalonia/AvaloniaExamples/MainWindow.axaml.cs
index 74b48dc..75fedd6 100644
--- a/Source/Examples/Avalonia/AvaloniaExamples/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/AvaloniaExamples/MainWindow.axaml.cs
@@ -19,7 +19,6 @@ namespace AvaloniaExamples
using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
- using Avalonia.Diagnostics;
using Avalonia.Interactivity;
///
@@ -35,7 +34,6 @@ public MainWindow()
InitializeComponent();
ListBox.ItemsSource = this.Examples = this.GetExamples(this.GetType().Assembly).OrderBy(e => e.Title).ToArray();
this.DataContext = this;
- DevToolsExtensions.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/ExampleBrowser/App.axaml.cs b/Source/Examples/Avalonia/ExampleBrowser/App.axaml.cs
index 294821a..3738a3b 100644
--- a/Source/Examples/Avalonia/ExampleBrowser/App.axaml.cs
+++ b/Source/Examples/Avalonia/ExampleBrowser/App.axaml.cs
@@ -1,4 +1,5 @@
using Avalonia;
+using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
@@ -9,6 +10,9 @@ public class App : Application
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
+#if DEBUG
+ this.AttachDeveloperTools();
+#endif
}
public override void OnFrameworkInitializationCompleted()
diff --git a/Source/Examples/Avalonia/ExampleBrowser/ExampleBrowser.csproj b/Source/Examples/Avalonia/ExampleBrowser/ExampleBrowser.csproj
index 90ea5f9..bb45fa2 100644
--- a/Source/Examples/Avalonia/ExampleBrowser/ExampleBrowser.csproj
+++ b/Source/Examples/Avalonia/ExampleBrowser/ExampleBrowser.csproj
@@ -1,12 +1,12 @@
WinExe
- net8.0
+ net10.0
-
+
diff --git a/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml b/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml
index a73203a..ec3e896 100644
--- a/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml
+++ b/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml
@@ -7,6 +7,7 @@
xmlns:exampleBrowser="clr-namespace:ExampleBrowser;assembly=ExampleBrowser"
xmlns:exampleLibrary="clr-namespace:ExampleLibrary;assembly=ExampleLibrary"
x:Class="ExampleBrowser.MainWindow"
+ x:DataType="exampleBrowser:MainViewModel"
Title="Example Browser">
diff --git a/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml.cs b/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml.cs
index 671653a..c8a0e51 100644
--- a/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/ExampleBrowser/MainWindow.axaml.cs
@@ -9,9 +9,6 @@ public partial class MainWindow : Window
public MainWindow()
{
InitializeComponent();
-#if DEBUG
- this.AttachDevTools();
-#endif
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/MemoryTest/App.axaml.cs b/Source/Examples/Avalonia/MemoryTest/App.axaml.cs
index 361180d..19b5726 100644
--- a/Source/Examples/Avalonia/MemoryTest/App.axaml.cs
+++ b/Source/Examples/Avalonia/MemoryTest/App.axaml.cs
@@ -13,37 +13,38 @@ class App : Application
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
- base.Initialize();
+#if DEBUG
+ this.AttachDeveloperTools();
+#endif
}
public override void OnFrameworkInitializationCompleted()
{
- if (!(ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop))
+ if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
- throw new PlatformNotSupportedException();
+ desktop.MainWindow = new MainWindow();
}
- desktop.MainWindow = new MainWindow();
-
base.OnFrameworkInitializationCompleted();
}
+ }
- static void Main(string[] args)
+ public class Program
+ {
+ public static AppBuilder BuildAvaloniaApp()
{
OxyPlotModule.EnsureLoaded();
- AppBuilder.Configure()
- .UsePlatformDetect()
+ var builder = AppBuilder.Configure()
+ .UsePlatformDetect();
#if DEBUG
- .LogToTrace()
+ builder.LogToTrace();
#endif
- .StartWithClassicDesktopLifetime(args);
+ return builder;
}
- public static void AttachDevTools(Window window)
+ public static void Main(string[] args)
{
-#if DEBUG
- DevToolsExtensions.AttachDevTools(window);
-#endif
+ BuildAvaloniaApp().StartWithClassicDesktopLifetime(args);
}
}
}
diff --git a/Source/Examples/Avalonia/MemoryTest/MainWindow.axaml.cs b/Source/Examples/Avalonia/MemoryTest/MainWindow.axaml.cs
index 6c19274..a46d688 100644
--- a/Source/Examples/Avalonia/MemoryTest/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/MemoryTest/MainWindow.axaml.cs
@@ -8,7 +8,6 @@ public partial class MainWindow : Window
public MainWindow()
{
this.InitializeComponent();
- App.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/MemoryTest/MemoryTest.csproj b/Source/Examples/Avalonia/MemoryTest/MemoryTest.csproj
index c13c26a..36c4f93 100644
--- a/Source/Examples/Avalonia/MemoryTest/MemoryTest.csproj
+++ b/Source/Examples/Avalonia/MemoryTest/MemoryTest.csproj
@@ -1,13 +1,13 @@
- net8.0
+ net10.0
Exe
-
+
-
+
\ No newline at end of file
diff --git a/Source/Examples/Avalonia/MemoryTest/Window1.axaml b/Source/Examples/Avalonia/MemoryTest/Window1.axaml
index 8d5028c..2139146 100644
--- a/Source/Examples/Avalonia/MemoryTest/Window1.axaml
+++ b/Source/Examples/Avalonia/MemoryTest/Window1.axaml
@@ -2,6 +2,8 @@
xmlns:oxy="http://oxyplot.org/avalonia"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="MemoryTest.Window1"
+ xmlns:local="clr-namespace:MemoryTest"
+ x:DataType="local:Window1"
MinWidth="500" MinHeight="300">
diff --git a/Source/Examples/Avalonia/MemoryTest/Window1.axaml.cs b/Source/Examples/Avalonia/MemoryTest/Window1.axaml.cs
index b04f0db..c889c62 100644
--- a/Source/Examples/Avalonia/MemoryTest/Window1.axaml.cs
+++ b/Source/Examples/Avalonia/MemoryTest/Window1.axaml.cs
@@ -17,8 +17,6 @@ public Window1()
DataContext = Model;
InitializeComponent();
-
- App.AttachDevTools(this);
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/MemoryTest/Window2.axaml b/Source/Examples/Avalonia/MemoryTest/Window2.axaml
index dd19f38..17c1756 100644
--- a/Source/Examples/Avalonia/MemoryTest/Window2.axaml
+++ b/Source/Examples/Avalonia/MemoryTest/Window2.axaml
@@ -2,6 +2,8 @@
xmlns:oxy="http://oxyplot.org/avalonia"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="MemoryTest.Window2"
+ xmlns:local="clr-namespace:MemoryTest"
+ x:DataType="local:Window2"
MinWidth="500" MinHeight="300">
diff --git a/Source/Examples/Avalonia/MemoryTest/Window2.axaml.cs b/Source/Examples/Avalonia/MemoryTest/Window2.axaml.cs
index 71745e0..9382e75 100644
--- a/Source/Examples/Avalonia/MemoryTest/Window2.axaml.cs
+++ b/Source/Examples/Avalonia/MemoryTest/Window2.axaml.cs
@@ -22,7 +22,6 @@ public Window2()
}
InitializeComponent();
- App.AttachDevTools(this);
DataContext = Plots;
}
diff --git a/Source/Examples/Avalonia/SimpleDemo/App.axaml.cs b/Source/Examples/Avalonia/SimpleDemo/App.axaml.cs
index 2548a40..faeed3f 100644
--- a/Source/Examples/Avalonia/SimpleDemo/App.axaml.cs
+++ b/Source/Examples/Avalonia/SimpleDemo/App.axaml.cs
@@ -1,4 +1,5 @@
using Avalonia;
+using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using OxyPlot.Avalonia;
@@ -8,35 +9,37 @@ namespace SimpleDemo
{
class App : Application
{
- public App()
- {
- RegisterServices();
- }
-
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
- base.Initialize();
+#if DEBUG
+ this.AttachDeveloperTools();
+#endif
}
public override void OnFrameworkInitializationCompleted()
{
- if (!(ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop))
+ if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
- throw new PlatformNotSupportedException();
+ desktop.MainWindow = new MainWindow();
}
- desktop.MainWindow = new MainWindow();
-
base.OnFrameworkInitializationCompleted();
}
+ }
- public static void Main(string[] args)
+ public class Program
+ {
+ public static AppBuilder BuildAvaloniaApp()
{
OxyPlotModule.EnsureLoaded();
- AppBuilder.Configure()
- .UsePlatformDetect()
- .StartWithClassicDesktopLifetime(args);
+ return AppBuilder.Configure()
+ .UsePlatformDetect();
+ }
+
+ public static void Main(string[] args)
+ {
+ BuildAvaloniaApp().StartWithClassicDesktopLifetime(args);
}
}
}
diff --git a/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml b/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml
index 8e2b0ca..3d2d634 100644
--- a/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml
+++ b/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml
@@ -3,6 +3,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:oxy="clr-namespace:OxyPlot.Avalonia;assembly=OxyPlot.Avalonia"
xmlns:simpleDemo="clr-namespace:SimpleDemo;assembly=SimpleDemo"
+ x:DataType="simpleDemo:MainViewModel"
Title="OxyPlot SimpleDemo" Height="480" Width="640">
diff --git a/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml.cs b/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml.cs
index 44352a2..a712ad6 100644
--- a/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml.cs
+++ b/Source/Examples/Avalonia/SimpleDemo/MainWindow.axaml.cs
@@ -25,7 +25,6 @@ public partial class MainWindow : Window
public MainWindow()
{
InitializeComponent();
- this.AttachDevTools();
}
private void InitializeComponent()
diff --git a/Source/Examples/Avalonia/SimpleDemo/SimpleDemo.csproj b/Source/Examples/Avalonia/SimpleDemo/SimpleDemo.csproj
index e84ede3..5ee531e 100644
--- a/Source/Examples/Avalonia/SimpleDemo/SimpleDemo.csproj
+++ b/Source/Examples/Avalonia/SimpleDemo/SimpleDemo.csproj
@@ -1,14 +1,14 @@
- net8.0
+ net10.0
Exe
-
+
-
+
\ No newline at end of file
diff --git a/Source/OxyPlot.Avalonia/OxyPlot.Avalonia.csproj b/Source/OxyPlot.Avalonia/OxyPlot.Avalonia.csproj
index 7874ce4..cb26b6b 100644
--- a/Source/OxyPlot.Avalonia/OxyPlot.Avalonia.csproj
+++ b/Source/OxyPlot.Avalonia/OxyPlot.Avalonia.csproj
@@ -1,6 +1,6 @@
- netstandard2.0
+ net10.0
Oxyplot.Avalonia
True
OxyPlot is a plotting library for .NET. This is a support library for OxyPlot to work with AvaloniaUI.
diff --git a/Source/OxyPlot.Avalonia/PlotBase.cs b/Source/OxyPlot.Avalonia/PlotBase.cs
index 1d43d90..f9f348e 100644
--- a/Source/OxyPlot.Avalonia/PlotBase.cs
+++ b/Source/OxyPlot.Avalonia/PlotBase.cs
@@ -8,6 +8,7 @@
// --------------------------------------------------------------------------------------------------------------------
using Avalonia.Reactive;
+using Avalonia.Input.Platform;
namespace OxyPlot.Avalonia
{
diff --git a/Source/OxyPlot.Avalonia/Themes/Default.axaml b/Source/OxyPlot.Avalonia/Themes/Default.axaml
index 9395e97..6b5dcf4 100644
--- a/Source/OxyPlot.Avalonia/Themes/Default.axaml
+++ b/Source/OxyPlot.Avalonia/Themes/Default.axaml
@@ -1,7 +1,9 @@
-
+