CommunityToolkit / CommunityToolkit/Windows

WrapLayout "collapsing"

Offen
#690 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug components::controls::primitives
Vorherrschende Sprache
C#
Sterne
1.1k
Forks
166
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

### Describe the bug

I have a weird bug that unfortunately mighe be difficult to find. Im using the WinUI-ItemsRepeater with a WrapLayout as "ItemsRepeater.Layout" like this:






[...]



Now it seems that adding Elements in a long list when the ItemsRepeater is "scrolled down", then it "collapses" and renders the Items wrong. I unfortunately have no other repro than this video:

https://github.com/user-attachments/assets/aa7b6ff4-2ce0-43b9-a892-f55279af9fbf

Whenever it blinks blue, I'm adding a test-element (via right-click). I'm scrolling down while I do this. Once I reach a certain point, adding another element (or basically "modifiying the underlying collection") leads to a collaps of all (!) WrapLayout within that control. I have three of them in here and they all do collapse.

I'm assuming that the renderer crashes for whatever reason. Or the layout calculation gets corrupted. I hope some of you with deeper knowledge of the insights might get a clue what's happening here. Basically all Items in all visible WrapLayouts/ItemsRepeater do not get rendered once after the other but all get rendered at (0,0):

![Image](https://github.com/user-attachments/assets/21cf289f-193f-4f93-978d-7e566c6585d5)

### Steps to reproduce

```text
Unfortunately I do not have a repro outside of my app.
```

### Expected behavior

I should be able to add elements as I wish without the layout collapsing.

### Screenshots

![Image](https://github.com/user-attachments/assets/269e59a2-1d8a-4ab3-972c-628abacf91e6)

### Code Platform

- [ ] UWP
- [x] WinAppSDK / WinUI 3
- [ ] Web Assembly (WASM)
- [ ] Android
- [ ] iOS
- [ ] MacOS
- [ ] Linux / GTK

### Windows Build Number

- [ ] Windows 10 1809 (Build 17763)
- [ ] Windows 10 1903 (Build 18362)
- [ ] Windows 10 1909 (Build 18363)
- [ ] Windows 10 2004 (Build 19041)
- [ ] Windows 10 20H2 (Build 19042)
- [ ] Windows 10 21H1 (Build 19043)
- [ ] Windows 10 21H2 (Build 19044)
- [ ] Windows 10 22H2 (Build 19045)
- [x] Windows 11 21H2 (Build 22000)
- [ ] Other (specify)

### Other Windows Build number

_No response_

### App minimum and target SDK version

- [ ] Windows 10, version 1809 (Build 17763)
- [ ] Windows 10, version 1903 (Build 18362)
- [ ] Windows 10, version 1909 (Build 18363)
- [ ] Windows 10, version 2004 (Build 19041)
- [ ] Windows 10, version 2104 (Build 20348)
- [x] Windows 11, version 22H2 (Build 22000)
- [ ] Other (specify)

### Other SDK version

_No response_

### Visual Studio Version

2022

### Visual Studio Build Number

17.4

### Device form factor

Desktop

### Additional context

_No response_

### Help us help you

No, I'm unable to contribute a solution.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit dem in ItemsRepeater.Layout verwendeten WinAppSDK/WinUI 3 WrapLayout und reproduziere den Fehler, indem du beim Ändern der zugrunde liegenden Sammlung scrollst. Vergleiche das Layout vor und nach dem Zusammenklappen und verwende dabei das Video und die Screenshots als Verhaltensreferenzen. Erledigt ist die Aufgabe, wenn sichtbare Elemente in allen betroffenen WrapLayouts nach dem Hinzufügen von Elementen korrekt positioniert bleiben.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp
Bereich
desktop, frontend
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
20/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.