diff --git a/demo/Semi.Avalonia.Demo/ViewModels/DataGridDemoViewModel.cs b/demo/Semi.Avalonia.Demo/ViewModels/DataGridDemoViewModel.cs index 43ecbf0..e1ec6a7 100644 --- a/demo/Semi.Avalonia.Demo/ViewModels/DataGridDemoViewModel.cs +++ b/demo/Semi.Avalonia.Demo/ViewModels/DataGridDemoViewModel.cs @@ -8,14 +8,14 @@ using CommunityToolkit.Mvvm.Input; namespace Semi.Avalonia.Demo.ViewModels; -public class DataGridDemoViewModel: ObservableObject +public class DataGridDemoViewModel : ObservableObject { public ObservableCollection GridData1 { get; set; } - + public DataGridCollectionView GridData2 { get; set; } - + public ObservableCollection GridData3 { get; set; } - + public RelayCommand AddCommand { get; set; } public DataGridDemoViewModel() @@ -23,7 +23,7 @@ public class DataGridDemoViewModel: ObservableObject GridData1 = new ObservableCollection(Song.Songs); GridData2 = new DataGridCollectionView(Song.Songs); GridData2.GroupDescriptions.Add(new DataGridPathGroupDescription("Album")); - GridData3 = new ObservableCollection(Song.Songs.Take(10).Select(a=>new SongViewModel() + GridData3 = new ObservableCollection(Song.Songs.Take(10).Select(a => new SongViewModel() { Title = a.Title, Artist = a.Artist, @@ -57,11 +57,10 @@ public class Song Album = album; CountOfComment = countOfComment; Url = $"https://music.163.com/song?id={netEaseId}"; - } - public static List Songs { get; set; } = new List() - { + public static List Songs => + [ new("好肚有肚(feat.李玲玉)", "熊猫堂ProducePandas", 2, 50, "A.S.I.A", 730, 1487039339), new("荒诞秀", "熊猫堂ProducePandas", 3, 15, "A.S.I.A", 639, 1487037601), new("长大", "熊猫堂ProducePandas", 4, 6, "A.S.I.A", 1114, 1487037690), @@ -122,41 +121,15 @@ public class Song new("热带季风Remix", "熊猫堂ProducePandas", 3, 22, "W.O.R.L.D.", 23, 2063173319), new("加州梦境", "熊猫堂ProducePandas", 2, 56, "W.O.R.L.D.", 1662, 2063173324), new("渐近自由", "熊猫堂ProducePandas", 4, 19, "W.O.R.L.D.", 124, 2063173321), - new("世界所有的烂漫", "熊猫堂ProducePandas", 3, 30, "W.O.R.L.D.", 335, 2053388775), - }; + new("世界所有的烂漫", "熊猫堂ProducePandas", 3, 30, "W.O.R.L.D.", 335, 2053388775) + ]; } -public class SongViewModel: ObservableObject +public partial class SongViewModel : ObservableObject { - private string? _title; - private string? _artist; - private string? _album; - private int _countOfComment; - private bool? _isSelected; - public string? Title - { - get => _title; - set => SetProperty(ref _title, value); - } - public string? Artist - { - get => _artist; - set => SetProperty(ref _artist, value); - } - public string? Album - { - get => _album; - set => SetProperty(ref _album, value); - } - public int CountOfComment - { - get => _countOfComment; - set => SetProperty(ref _countOfComment, value); - } - public bool? IsSelected - { - get => _isSelected; - set => SetProperty(ref _isSelected, value); - } - + [ObservableProperty] private string? _title; + [ObservableProperty] private string? _artist; + [ObservableProperty] private string? _album; + [ObservableProperty] private int _countOfComment; + [ObservableProperty] private bool? _isSelected; } \ No newline at end of file