Winui Design

WinUI 3 układ, wybór kontrolki, motywy i wskazówki projektowe/przeglądowe XAML-binding

Autor: microsoft · microsoft/win-dev-skills

Testowano · Działa ★ 8.8/10

Winui Design — WinUI 3 układ, wybór kontrolki, motywy i wskazówki projektowe/przeglądowe XAML-binding

Co robi ten skill

Umiejętność projektowania i przeglądu dla WinUI 3 (Windows App SDK): mapuje wymagania na kontrolki platformy, stosuje sylwetki Fluent app-shape, rubrykę rozmiarów okien, zasady motywów Light/Dark/High-Contrast i wykrywa typowe pułapki wiązania XAML x:Bind. Wyzwala się podczas tworzenia lub przeglądania WinUI 3 XAML, migracji interfejsu użytkownika desktop/WPF do WinUI, lub wyboru między kontrolkami i wzorcami WinUI. Zawiera dołączony winui-search.exe (tylko dla Windows) do wyszukiwania przykładów kodu WinUI Gallery/Toolkit/Reactor, plus trzy pliki referencyjne na żądanie.

Raport z testu

Zlokalizowałem SKILL.md w plugins/winui/skills/winui-design/; frontmatter parsował z name+description. Sprawdziłem wszystkie 3 odwołujące się pliki (references/brushes-and-icons.md, theme-accessibility.md, layout-review.md) — HTTP 200 — plus winui-search.exe (HTTP 200, 7.9MB; `file` zgłasza binarny plik konsoli PE32+ Windows, niemożliwy do uruchomienia na tym hoście macOS, więc ten krok jest tylko dla Windows). Zweryfikowałem instalację w czystym tymczasowym HOME: SKILL.md ląduje w ~/.claude/skills/winui-design/SKILL.md. Test WYJŚCIA: napisałem małe narzędzie „Rename File” WinUI 3 (TextBox + status + button) dwukrotnie — linia bazowa vs zgodne z umiejętnością (oba zapisane w scratchpadzie). Zgodnie z treścią wygenerowano konkretnie lepszy XAML: wykryto dwa rzeczywiste ciche błędy, które linia bazowa dostarczyła — {x:Bind Vm.Status} domyślnie ustawia się na OneTime, więc status nigdy się nie aktualizuje (umiejętność dodała Mode=OneWay), a TwoWay TextBox bez UpdateSourceTrigger=PropertyChanged pozostawia VM nieaktualne do utraty fokusu — i zastosowano rubrykę rozmiarów okien z poprawnym DPI AppWindow.Resize (linia bazowa pozostawiła domyślny, zbyt duży rozmiar ~1024x768), zamieniając zakodowany na stałe literał „Gray” + placeholder-as-label na semantyczny status InfoBar i widoczną etykietę. NIE uruchomiłem winui-search.exe (niewłaściwa platforma); wbudowane wskazówki przeniosły wyjście bez niego.

Testowano: 2026-07-21 · Claude Code 2.x (agent harness)

Instalacja

git clone --depth 1 https://github.com/microsoft/win-dev-skills.git /tmp/winui-design-src
mkdir -p ~/.claude/skills
cp -R /tmp/winui-design-src/plugins/winui/skills/winui-design ~/.claude/skills/winui-design
# SKILL.md now at ~/.claude/skills/winui-design/SKILL.md
# Optional bundled tool: winui-search.exe is a Windows-only PE32+ binary (~7.9MB, .NET).
#   It runs ONLY on Windows (WinUI's real target platform); NOT usable on macOS/Linux.
#   The skill's design/review guidance works without it — the exe only adds sample lookups.
# Source for the binary is in the same repo at src/tools/winui-search if you want to build/inspect.
# Plugin-marketplace alternative: repo exposes .claude-plugin/marketplace.json (plugin name: winui).

Komendy i przykładowe prompty

  • /winui-designWinUI 3 układ, wybór kontrolki, motywy i wskazówki projektowe/przeglądowe XAML-binding

Skille uruchamiają się na zwykłe polecenia — bez komend do zapamiętania. Po instalacji aktywują go prompty takie jak te (po angielsku):

  • Review this XAML page against Fluent Design
  • Choose the right WinUI control for this layout
  • Fix dark theme contrast in this WinUI screen