Les méthodes ListViewGroupCollection lèvent une nouvelle exception InvalidOperationException
Auparavant, une exception InvalidOperationException était levée si des méthodes ListViewGroupCollection étaient appelées sur ListView en mode virtuel et si Handle avait déjà été créé. À compter de .NET 6, ces méthodes ListViewGroupCollection vérifient maintenant uniquement si l’élément ListView est en mode virtuel. Si c’est le cas, elles lèvent une exception InvalidOperationException associée à un message plus descriptif.
Comportement précédent
Considérez le code suivant qui ajoute un ListViewGroup à un ListView :
ListViewGroup group1 = new ListViewGroup
{
Header = "CollapsibleGroup1",
CollapsedState = ListViewGroupCollapsedState.Expanded
};
listView.Groups.Add(group1);
Ce code produisait une exception InvalidOperationException avec le message suivant :
Lorsque ListView est en mode virtuel, vous ne pouvez pas énumérer la collection d’éléments ListView à l’aide d’un énumérateur ou appeler GetEnumerator. Utilisez l’indexeur d’éléments ListView à la place et accédez à un élément par valeur d’index.
Nouveau comportement
Le même code de la section Comportement précédent génère une exception InvalidOperationException avec le message suivant :
Vous ne pouvez pas ajouter de groupes à la collection de groupes ListView lorsque ListView est en mode virtuel.
Modifier la catégorie
Cette modification affecte la compatibilité binaire.
Raison du changement
Le nouveau message InvalidOperationException est plus compréhensible. En outre, il clôture une solution de contournement dans laquelle le développeur pouvait ajouter un ListViewGroup à la ListView avant la création de Handle.
Version introduite
.NET 6 RC 2
Action recommandée
- Effectuez une vérification et, si nécessaire, mettez à jour votre code afin qu’il n’ajoute pas de ListViewGroup à ListView en mode virtuel.
- Si votre code gère des exceptions InvalidOperationException, vous devrez peut-être mettre à jour le message pour refléter que ListView est en mode virtuel.
API affectées
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour