diff --git a/MainWindow.xaml b/MainWindow.xaml
index db11bfe..35681c0 100644
--- a/MainWindow.xaml
+++ b/MainWindow.xaml
@@ -7,9 +7,20 @@
Width="640" Height="480"
WindowStartupLocation="CenterScreen"
Title="AvaloniaCoreRTDemo">
-
- Welcome to Avalonia UI + CoreRT!
-
-
-
+
+
+
+ Welcome to Avalonia UI + CoreRT!
+
+
+
+
+
diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs
index d0ca75b..0be15b3 100644
--- a/MainWindow.xaml.cs
+++ b/MainWindow.xaml.cs
@@ -2,10 +2,6 @@ using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.Shapes;
using Avalonia.Markup.Xaml;
-using Avalonia.Media.Imaging;
-using ReactiveUI;
-using System;
-using Path = System.IO.Path;
namespace AvaloniaCoreRTDemo
{
@@ -14,7 +10,7 @@ namespace AvaloniaCoreRTDemo
public MainWindow()
{
InitializeComponent();
- this.DataContext = new ViewModel();
+ this.DataContext = new MainWindowViewModel();
}
private void InitializeComponent()
@@ -22,27 +18,4 @@ namespace AvaloniaCoreRTDemo
AvaloniaXamlLoader.Load(this);
}
}
-
- public class ViewModel: ReactiveObject
- {
- public ViewModel()
- {
- DotNetImage = new Bitmap(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "dotnet.png"));
- AvaloniaImage = new Bitmap(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "avalonia.png"));
- }
-
- private IBitmap dotNetImage;
- public IBitmap DotNetImage
- {
- get { return dotNetImage; }
- set { this.RaiseAndSetIfChanged(ref this.dotNetImage, value); }
- }
-
- private IBitmap avaloniaImage;
- public IBitmap AvaloniaImage
- {
- get { return avaloniaImage; }
- set { this.RaiseAndSetIfChanged(ref this.avaloniaImage, value); }
- }
- }
}
\ No newline at end of file
diff --git a/MainWindowViewModel.cs b/MainWindowViewModel.cs
new file mode 100644
index 0000000..37b96d0
--- /dev/null
+++ b/MainWindowViewModel.cs
@@ -0,0 +1,49 @@
+using Avalonia;
+using Avalonia.Media.Imaging;
+using ReactiveUI;
+using System;
+using System.Reactive;
+using Path = System.IO.Path;
+
+namespace AvaloniaCoreRTDemo
+{
+ public class MainWindowViewModel: ReactiveObject
+ {
+ public MainWindowViewModel()
+ {
+ DotNetImage = new Bitmap(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "dotnet.png"));
+ AvaloniaImage = new Bitmap(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "avalonia.png"));
+
+ FileExitCommand = ReactiveCommand.Create(RunFileExit);
+ HelpAboutCommand = ReactiveCommand.Create(RunHelpAbout);
+ }
+
+ public IBitmap DotNetImage
+ {
+ get { return dotNetImage; }
+ set { this.RaiseAndSetIfChanged(ref this.dotNetImage, value); }
+ }
+
+ public IBitmap AvaloniaImage
+ {
+ get { return avaloniaImage; }
+ set { this.RaiseAndSetIfChanged(ref this.avaloniaImage, value); }
+ }
+
+ public ReactiveCommand FileExitCommand { get; }
+ public ReactiveCommand HelpAboutCommand { get; }
+
+ void RunFileExit()
+ {
+ Environment.Exit(0);
+ }
+
+ void RunHelpAbout()
+ {
+ // Code for executing the command here.
+ }
+
+ private IBitmap dotNetImage;
+ private IBitmap avaloniaImage;
+ }
+}
\ No newline at end of file