From 5b502679ecc77fefb0054bc0637115cbe930e788 Mon Sep 17 00:00:00 2001 From: kawaiSky Date: Wed, 20 Mar 2024 21:43:03 +0800 Subject: [PATCH] ObservableList Replace Bugfix When replacing, the callback function should refer to the item in the array, rather than generating a new one. --- src/ObservableCollections/ObservableList.Views.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ObservableCollections/ObservableList.Views.cs b/src/ObservableCollections/ObservableList.Views.cs index 13f4d77..ae747ec 100644 --- a/src/ObservableCollections/ObservableList.Views.cs +++ b/src/ObservableCollections/ObservableList.Views.cs @@ -212,7 +212,7 @@ namespace ObservableCollections // ObservableList does not support replace range { var v = (e.NewItem, selector(e.NewItem)); - var ov = (e.OldItem, selector(e.OldItem)); + var ov = (e.OldItem, list[e.OldStartingIndex].Item2); list[e.NewStartingIndex] = v; filter.InvokeOnReplace(v, ov, e.NewStartingIndex); break; @@ -240,4 +240,4 @@ namespace ObservableCollections } } } -} \ No newline at end of file +}