Изменения документа Observable
Редактировал(а) Alexandr Fokin 2023/02/24 21:16
<
>
отредактировано Alexandr Fokin
на 2023/02/23 19:25
на 2023/02/23 19:25
отредактировано Alexandr Fokin
на 2023/02/23 19:27
на 2023/02/23 19:27
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,9 +1,20 @@ 1 -|ObservableCollection|Выступает в роли обертки над List, предоставляет интерфейс оповещения о событиях изменения коллекции. 1 +|ObservableCollection|(% style="width:1243px" %)Выступает в роли обертки над List, предоставляет интерфейс оповещения о событиях изменения коллекции. 2 2 Важно: по умолчанию уведомляет только об изменения самой коллекции, не учитывая изменения элементов (в случае, если они реализует INotifyPropertyChanged). 3 3 В таком варианте обновление элемента подразумевает его повторную вставку. 4 4 \\При этом, например, привязка в фреймворке [[WPF>>doc:Разработка.NET.Frameworks and Apps.GUI.WPF.WebHome]] умеет в том числе фиксировать изменения свойств элементов. 5 -Возможно создание такого расширения, который также будет в нужных местах подписываться/отписываться на изменения элементов и пробрасывать их в свой интерфейс оповещения. 6 -| | 7 -| | 5 +Возможно создание такого расширения, который также будет в нужных местах подписываться/отписываться на изменения элементов и пробрасывать их в свой интерфейс оповещения.|(% style="width:89px" %)((( 6 +|(% colspan="2" %)Демонстрация обновления элемента по индексу. 7 +| |{{code language="c#"}}var item = Collection1[index.Value]; 8 +item.Property1 += "modified"; 8 8 10 +Collection1.RemoveAt(index.Value); 11 +Collection1.Add(item);{{/code}} 12 +|INotifyPropertyChanged|{{code language="C#"}}var item = Collection2[index.Value]; 13 +item.Property1 += "modified";{{/code}} 14 + 9 9 16 +))) 17 +| |(% style="width:1243px" %) |(% style="width:89px" %) 18 +| |(% style="width:1243px" %) |(% style="width:89px" %) 19 + 20 +