Poor performance following ShadowAssist.CacheMode change #3616

Offen
#3,840 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

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

Rechercherichtung

Beginne mit der Überprüfung von Commit #3616 und reproduziere die Verlangsamung in der WPF-App. Konzentriere dich dabei auf DialogHost-Flyout-Animationen nach dem Ändern der Fenstergröße oder dem Wechsel in den Vollbildmodus. Vergleiche das Verhalten von CacheMode mit der vorherigen Version und ermittle, ob das Problem global ist oder auf problematische Controls beschränkt bleibt; als erledigt gilt die Aufgabe, wenn eine reproduzierbare Ursache und ein dokumentierter Umgang damit vorliegen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug
Bug explanation

It seems that specifically following commit #3616 to change the default ShadowAssist CacheMode behaviour, I find the performance of our WPF app to be a lot slower and laggy than it was before, particularly when it comes to animations such as those in the DialogHost flyouts. It's particularly bad after resizing the window or in full screen.

I'm trying to figure out the best way to replicate the old behaviour. I've tried to set a CacheMode with EnableClearType and SnapsToDevicePixels but it seems like I have to set this all the way down and just setting it on the window or main containing control doesn't work.

Would appreciate any guidance on this. Has anyone else had a similar problem or know the best way to handle the CacheMode property globally? Is that even the right approach or should it only be set for troublesome controls?

Version

5.2.1

Vorherrschende Sprache
C#
Sterne
16.3k
Forks
3.5k
Ø Merge
4 Std. 25 Min.
Gemergte PRs (30 T.)
4

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus MaterialDesignInXAML/MaterialDesignInXamlToolkit

Alle Issues in MaterialDesignInXAML/MaterialDesignInXamlToolkit

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

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