Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Tidigare utlöstes ett InvalidOperationException om ListViewGroupCollection metoder anropades på ett ListView i virtuellt läge ochHandle hade redan skapats. Från och med .NET 6 kontrollerar dessa ListViewGroupCollection metoder nu endast om de ListView är i virtuellt läge. I så fall genererar de ett InvalidOperationException med ett mer beskrivande meddelande.
Tidigare beteende
Överväg följande kod som lägger till en ListViewGroup i en ListView:
ListViewGroup group1 = new ListViewGroup
{
Header = "CollapsibleGroup1",
CollapsedState = ListViewGroupCollapsedState.Expanded
};
listView.Groups.Add(group1);
Den här koden skapade ett InvalidOperationException med följande meddelande:
När ListView är i virtuellt läge kan du inte räkna upp genom samlingen ListView-objekt med hjälp av en uppräknare eller anropa GetEnumerator. Använd ListView-objektindexeraren i stället och få åtkomst till ett objekt efter indexvärde.
Nytt beteende
Samma kod från avsnittet Föregående beteende skapar ett InvalidOperationException med följande meddelande:
Du kan inte lägga till grupper i samlingen ListView-grupper när ListView är i virtuellt läge.
Ändra kategori
Den här ändringen påverkar binär kompatibilitet.
Orsak till ändring
Det nya InvalidOperationException meddelandet är mer begripligt. Dessutom stänger den en lösning där utvecklaren kan lägga till en ListViewGroup till ListView innan den Handle skapades.
Version lanserad
.NET 6 RC 2
Rekommenderad åtgärd
- Granska och uppdatera vid behov koden så att den inte lägger till en ListViewGroup i ListView i virtuellt läge.
- Om koden hanterar InvalidOperationException undantag kan du behöva uppdatera meddelandet för att återspegla att ListView är i virtuellt läge.