diff --git a/samples/VirtualizationTest/MainWindow.xaml b/samples/VirtualizationTest/MainWindow.xaml
index aa882c052a..94a0fc1b68 100644
--- a/samples/VirtualizationTest/MainWindow.xaml
+++ b/samples/VirtualizationTest/MainWindow.xaml
@@ -25,7 +25,10 @@
-
+
diff --git a/samples/VirtualizationTest/ViewModels/MainWindowViewModel.cs b/samples/VirtualizationTest/ViewModels/MainWindowViewModel.cs
index 953f533065..98f1735849 100644
--- a/samples/VirtualizationTest/ViewModels/MainWindowViewModel.cs
+++ b/samples/VirtualizationTest/ViewModels/MainWindowViewModel.cs
@@ -3,6 +3,7 @@
using System;
using System.Linq;
+using Avalonia.Collections;
using ReactiveUI;
namespace VirtualizationTest.ViewModels
@@ -12,7 +13,6 @@ namespace VirtualizationTest.ViewModels
private int _itemCount = 200;
private string _newItemString;
private IReactiveList _items;
- private ItemViewModel _selectedItem;
private string _prefix = "Item";
public MainWindowViewModel()
@@ -40,11 +40,8 @@ namespace VirtualizationTest.ViewModels
set { this.RaiseAndSetIfChanged(ref _itemCount, value); }
}
- public ItemViewModel SelectedItem
- {
- get { return _selectedItem; }
- set { this.RaiseAndSetIfChanged(ref _selectedItem, value); }
- }
+ public AvaloniaList SelectedItems { get; }
+ = new AvaloniaList();
public IReactiveList Items
{
@@ -82,9 +79,9 @@ namespace VirtualizationTest.ViewModels
{
var index = Items.Count;
- if (SelectedItem != null)
+ if (SelectedItems.Count > 0)
{
- index = Items.IndexOf(SelectedItem) + 1;
+ index = Items.IndexOf(SelectedItems[0]) + 1;
}
Items.Insert(index, new ItemViewModel(index, NewItemString));
@@ -92,9 +89,9 @@ namespace VirtualizationTest.ViewModels
private void Remove()
{
- if (SelectedItem != null)
+ if (SelectedItems.Count > 0)
{
- Items.Remove(SelectedItem);
+ Items.RemoveAll(SelectedItems);
}
}