* Datagrid fixes

This commit is contained in:
Joseph Moreno 2023-02-08 00:05:42 -05:00
parent defcc0b360
commit cd2a9d72aa
12 changed files with 21 additions and 24 deletions

View File

@ -1,4 +1,5 @@
using System;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
@ -6,6 +7,7 @@ using Avalonia.Markup.Xaml;
using Avalonia.Styling;
using Avalonia.Themes.Fluent;
using Avalonia.Themes.Simple;
using AvaloniaCoreRTDemo.Interfaces;
using AvaloniaCoreRTDemo.Windows;

View File

@ -20,7 +20,7 @@ namespace AvaloniaCoreRTDemo.Controls
public void Reload(IMainWindowState? model)
{
if(model is not null)
if (model is not null)
this.DataContext = new MainControlViewModel(model);
}
}

View File

@ -1,8 +1,7 @@
using System;
using System.IO;
using Avalonia.Media.Imaging;
using AvaloniaCoreRTDemo.Interfaces;
using ReactiveUI;
namespace AvaloniaCoreRTDemo.Controls.ViewModels

View File

@ -1,6 +1,4 @@
using Avalonia.Controls;
namespace AvaloniaCoreRTDemo.Interfaces
namespace AvaloniaCoreRTDemo.Interfaces
{
public interface IMainWindow
{

View File

@ -1,15 +1,16 @@
using System;
using Avalonia.Media.Imaging;
namespace AvaloniaCoreRTDemo
{
public interface IMainWindowState
{
public interface IMainWindowState
{
IBitmap DotNetImage { get; }
IBitmap AvaloniaImage { get; }
String? Text { get; }
void SetUnloadable();
}
}
}

View File

@ -1,6 +1,7 @@
using System;
using System.IO;
using System.Runtime.InteropServices;
using Avalonia;
using Avalonia.Media.Imaging;
using Avalonia.Platform;
@ -30,7 +31,7 @@ namespace AvaloniaCoreRTDemo
return GetImageFromResources("broken-link.png");
}
}
private static String GetImageFullPath(String fileName)
=> Path.Combine(AppDomain.CurrentDomain.BaseDirectory, fileName);
}

View File

@ -10,7 +10,7 @@
<Grid VerticalAlignment="Top" HorizontalAlignment="Left" ColumnDefinitions="Auto,*">
<Image Margin="0, 60" Grid.Column="0" Stretch="None" Source="{Binding ComputerImage}" VerticalAlignment="Top" HorizontalAlignment="Left">
</Image>
<DataGrid Grid.Column="1" Items="{Binding SystemDetails}" IsReadOnly="True">
<DataGrid Grid.Column="1" Items="{Binding SystemDetails}" IsReadOnly="True" CanUserReorderColumns="False" CanUserSortColumns="False" CanUserResizeColumns="False" HeadersVisibility="None">
<DataGrid.Columns>
<DataGridTextColumn Header="Key" Binding="{Binding Key, x:DataType=viewModels:SystemDetail}" FontWeight="Bold" />
<DataGridTextColumn Header="Value" Binding="{Binding Value, x:DataType=viewModels:SystemDetail}" />

View File

@ -1,4 +1,5 @@
using System;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;

View File

@ -1,10 +1,8 @@
using System;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Avalonia.Markup.Xaml;
using AvaloniaCoreRTDemo.Controls;
using AvaloniaCoreRTDemo.Controls.ViewModels;
using AvaloniaCoreRTDemo.Interfaces;
using AvaloniaCoreRTDemo.Windows.ViewModels;
@ -14,7 +12,7 @@ namespace AvaloniaCoreRTDemo.Windows
{
private readonly Application? _app = App.Current;
public MainWindow() : this(default) { }
public MainWindow() : this(default) { }
public MainWindow(IMainWindow? window)
{
this.InitializeComponent(window);

View File

@ -9,10 +9,10 @@ using ReactiveUI;
namespace AvaloniaCoreRTDemo.Windows.ViewModels
{
internal record SystemDetail(String Key, String Value);
internal sealed class AboutViewModel : ReactiveObject
{
private readonly IBitmap _computerImage;
private readonly Boolean _darkTheme;

View File

@ -1,5 +1,6 @@
using System;
using System.Reactive;
using Avalonia.Controls;
using AvaloniaCoreRTDemo.Interfaces;
@ -46,7 +47,7 @@ namespace AvaloniaCoreRTDemo.Windows.ViewModels
get => this._fluentDarkEnable;
set => this.RaiseAndSetIfChanged(ref this._fluentDarkEnable, value);
}
public ReactiveCommand<Unit, Unit> FileExitCommand { get; }
public ApplicationModelBase(IThemeSwitch themeSwitch)

View File

@ -1,10 +1,6 @@
using System;
using System.Reactive;
using Avalonia.Controls;
using Avalonia.Controls;
using AvaloniaCoreRTDemo.Controls.ViewModels;
using AvaloniaCoreRTDemo.Interfaces;
using ReactiveUI;
namespace AvaloniaCoreRTDemo.Windows.ViewModels
{