From fc2eb08d88860757553f9b5fd60fb4a40e768636 Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Tue, 25 Aug 2020 17:51:07 +0200 Subject: [PATCH] Use SelectionModel in samples. --- samples/VirtualizationDemo/MainWindow.xaml | 4 ++-- .../ViewModels/MainWindowViewModel.cs | 15 +++++++-------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/samples/VirtualizationDemo/MainWindow.xaml b/samples/VirtualizationDemo/MainWindow.xaml index dfe7524997..4bd657bf93 100644 --- a/samples/VirtualizationDemo/MainWindow.xaml +++ b/samples/VirtualizationDemo/MainWindow.xaml @@ -44,8 +44,8 @@ SelectedItems { get; } - = new AvaloniaList(); + public SelectionModel Selection { get; } = new SelectionModel(); public AvaloniaList Items { @@ -138,9 +138,9 @@ namespace VirtualizationDemo.ViewModels { var index = Items.Count; - if (SelectedItems.Count > 0) + if (Selection.SelectedItems.Count > 0) { - index = Items.IndexOf(SelectedItems[0]); + index = Selection.SelectedIndex; } Items.Insert(index, new ItemViewModel(_newItemIndex++, NewItemString)); @@ -148,9 +148,9 @@ namespace VirtualizationDemo.ViewModels private void Remove() { - if (SelectedItems.Count > 0) + if (Selection.SelectedItems.Count > 0) { - Items.RemoveAll(SelectedItems); + Items.RemoveAll(Selection.SelectedItems.ToList()); } } @@ -164,8 +164,7 @@ namespace VirtualizationDemo.ViewModels private void SelectItem(int index) { - SelectedItems.Clear(); - SelectedItems.Add(Items[index]); + Selection.SelectedIndex = index; } } }