SelectionChangedCommandParameter is evaluated before SelectedItem updates in .NET 11
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Eseguire l’esempio allegato e riprodurre il comportamento selezionando un elemento nella CollectionView. Esaminare l’ordine tra l’aggiornamento del binding di SelectedItem e l’esecuzione di SelectionChangedCommand, quindi verificare che SelectionChangedCommandParameter riceva l’elemento aggiornato o la proprietà di ViewModel quando viene eseguito il comando.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
When using CommunityToolkit-generated commands with CollectionView, the SelectionChangedCommandParameter is evaluated before the SelectedItem binding is updated in .NET 11.
This behavior differs from .NET 10, where the bound SelectedItem was already updated when the command executed.
As a result, commands that rely on ViewModel properties (for example, SelectedItem) receive null or stale values.
- The command executes before the SelectedItem binding is updated.
- SelectionChangedCommandParameter is null or contains the previous value.
- This breaks scenarios that rely on ViewModel-bound properties inside the command.
Regression
8.0.3
Steps to reproduce
Run the attached sample.
Tap/select an item in the CollectionView.
Observe that SelectionChangedCommand is invoked.
Inspect the value of SelectionChangedCommandParameter.
Expected behavior
SelectionChangedCommandParameter should receive the updated selected item (or the updated ViewModel property) when the command executes.
Screenshots
No response
IDE and version
VS 2022
IDE version
No response
Nuget packages
- CommunityToolkit.Common
- CommunityToolkit.Diagnostics
- CommunityToolkit.HighPerformance
- CommunityToolkit.Mvvm (aka MVVM Toolkit)
Nuget package version(s)
8.0.4
Additional context
No response
Help us help you
Yes, I'd like to be assigned to work on this item
- Lingua principale
- C#
- Stelle
- 3.8k
- Fork
- 401
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di CommunityToolkit/dotnet
-
RelayCommand<T>.CanExecute(null) returns false for value types without a predicateForse già presa @apachezy l’ha presa 77 giorni fa. Apertabug :bug:
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
CommunityToolkit/dotnet#1206 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
CommunityToolkit/dotnet#1186 ·
-
bug :bug:
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
CommunityToolkit/dotnet#648 ·
-
bug :bug:
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
CommunityToolkit/dotnet#1215 ·
-
Add segmented buffering and sequence reads to `ArrayPoolBufferWriter<T>`Forse già presa @paulomorgado l’ha presa 15 giorni fa. Apertafeature request :mailbox_with_mail:
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
CommunityToolkit/dotnet#1214 ·
Tutte le issue di CommunityToolkit/dotnet
Issue simili
-
Bug: Hidden loading rings keep the compositor running, so Files uses 7-94% of a CPU core while idleAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
files-community/Files#19026 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Physgun SFX SpamAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
SubtitleEdit/subtitleedit#15946 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
BHoM/Civil3D_Toolkit#118 ·
-
Reason-phrase table has misspelled entries (`Unathorized`, `Switching Protcols`, `Multiple Choises`)Apertabug severity:low
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100