wpf-rule-rendering-antipatterns

Installation
SKILL.md

Rendering Anti-Patterns

Common WPF rendering mistakes that cause performance problems or visual corruption.


Anti-Pattern 1: InvalidateVisual() in a Loop

Calling InvalidateVisual() inside a loop schedules a separate render pass for each iteration. WPF does not coalesce these — each call queues a layout/render cycle, causing frame drops or freezes.

// Prohibited: InvalidateVisual inside a loop
foreach (var item in items)
{
    item.Value = ComputeNewValue(item);
    InvalidateVisual();   // ← queues N render passes
}
Installs
1
GitHub Stars
41
First Seen
Sep 12, 2026