CommunityToolkit / CommunityToolkit/Windows

[SettingsExpander] Unhandled "Unspecified error" exception

Abierto
#616 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
C#
Estrellas
1.1k
Forks
166
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Describe the bug

When using a `SettingsExpander` that is bound to an `ObservableCollection` in a page that is not cached (`NavigationCacheMode="Disabled"`) and this page is repeatedly opened (and old instances of the page have been garbage collected), the app crashes once an item of that `ObservableCollection` is removed.

### Steps to reproduce
Download and run this test project : [Test.zip](https://github.com/user-attachments/files/18602524/Test.zip)

### Expected behavior

No crash.
When adding `NavigationCacheMode="Required"` to `Page2`, the crash is not happening

### Code Platform

- [x] WinAppSDK / WinUI 3

### Windows Build Number

- [x] Windows 11 21H2 (Build 22000)

### App minimum and target SDK version

- [x] Windows 10, version 1809 (Build 17763)

### Visual Studio Version

2022

### Help us help you

No, I'm unable to contribute a solution.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Descarga y ejecuta el proyecto Test.zip enlazado; después, reproduce el bloqueo abriendo repetidamente la página no almacenada en caché y eliminando un elemento de su ObservableCollection. Empieza siguiendo el binding de SettingsExpander y el ciclo de vida de la página en torno a Page2 y NavigationCacheMode. Se considera terminado cuando la eliminación de elementos ya no provoca un bloqueo después de que las instancias antiguas de la página hayan sido garbage collected.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
csharp
Área
frontend
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.