Token导航 LogoToken导航TokenDH.com
前端设计操作浏览器github未标认证来源可访问许可证需确认审计通过

dotnet-ui-chooserdotnet ui 选择器

Agent Skill

用于辅助界面设计、视觉规范、排版、配色、布局和交互体验优化。它适合让 Agent 根据产品场景整理页面结构、生成 UI 方案、检查视觉一致性或改进组件层级。使用时需要结合现有品牌、设计系统和用户任务,不应只堆装饰元素;涉及真实页面改动时,应通过截图或浏览器预览检查文本溢出、对齐和响应式表现。

总安装

336

周安装

14

GitHub Stars

15

下载量

112
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dotnet-ui-chooser(dotnet ui 选择器)
来源仓库:https://github.com/wshaddix/dotnet-skills
仓库路径:skills/dotnet-ui-chooser
安装命令:
npx skills add https://github.com/wshaddix/dotnet-skills --skill dotnet-ui-chooser
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/wshaddix/dotnet-skills --skill dotnet-ui-chooser

简介

辅助选择适合的 .NET UI 框架。

  • 对比 Web、跨平台与 Windows-only 方案优劣。
  • 基于五个维度提供结构化决策树分析。适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。
  • 适用于新项目技术栈评估与迁移路径规划。
  • dotnet-ui-chooser 属于前端设计类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

dotnet-ui-chooser

UI framework selection decision tree for.NET applications. Covers Web (Blazor Server, Blazor WebAssembly, Blazor Hybrid), cross-platform (MAUI, Uno Platform, Avalonia), and Windows-only (WinUI 3, WPF, WinForms) frameworks. Presents structured trade-off analysis across five decision factors to help teams evaluate options based on their specific constraints.

Scope boundary: This skill owns the framework selection decision tree and cross-framework comparison. Individual framework depth, patterns, and APIs are owned by the respective framework skills. Migration guidance between frameworks is owned by [skill:dotnet-wpf-migration].

Out of scope: Framework-specific implementation patterns -- see individual skills listed below. Migration paths between frameworks -- see [skill:dotnet-wpf-migration]. Desktop UI testing -- see [skill:dotnet-ui-testing-core].

Cross-references: [skill:dotnet-blazor-patterns] for Blazor hosting and render modes, [skill:dotnet-maui-development] for MAUI patterns, [skill:dotnet-uno-platform] for Uno Platform patterns, [skill:dotnet-winui] for WinUI 3 patterns, [skill:dotnet-wpf-modern] for modern WPF on.NET 8+, [skill:dotnet-winforms-basics] for WinForms modernization.


Decision Tree

Use this structured flow to narrow framework choices based on project constraints. Each branch presents trade-offs rather than definitive answers -- the right choice depends on the weight your team assigns to each factor.

Step 1: Target Platforms

The most significant constraint. Identify which platforms the application must support.

Target platforms?
|
+-- Web browser only
|   --> Blazor (Server, WebAssembly, or Auto)
|       See "Blazor Hosting Model Selection" below
|
+-- Windows only
|   --> WinUI 3, WPF, or WinForms
|       See "Windows Framework Selection" below
|
+-- Mobile (iOS / Android)
|   +-- Also need desktop?
|   |   +-- Yes --> MAUI or Uno Platform
|   |   +-- No  --> MAUI or Uno Platform
|   |
|   +-- Also need web?
|       +-- Yes --> Uno Platform (WASM target) or Blazor Hybrid in MAUI
|       +-- No  --> MAUI or Uno Platform
|
+-- All platforms (web + mobile + desktop)
|   --> Uno Platform (broadest reach)
|       or Blazor Hybrid in MAUI (web UI, native shell)
|
+-- Desktop cross-platform (Windows + macOS + Linux)
    --> Uno Platform or Avalonia
        MAUI supports macOS/Windows but not Linux

Step 2: Team Expertise

Match frameworks to existing team skills to reduce ramp-up time.

Team StrengthStrong FitModerate FitSteeper Curve
WPF / WinUI XAMLWPF, WinUI 3Uno Platform (WinUI XAML surface)Blazor (Razor syntax)
Web (HTML/CSS/JS)BlazorUno Platform (WASM target)WPF, WinUI (XAML)
Xamarin.FormsMAUI (direct successor)Uno PlatformBlazor, WPF
C# but no UI frameworkWinForms (simplest), BlazorMAUIWPF, WinUI (XAML learning curve)
React / AngularBlazor WebAssembly (SPA model)Uno Platform (WASM)WPF, WinUI

Step 3: UI Complexity

Match the UI requirements to framework rendering capabilities.

UI NeedBest FitAlso Consider
Rich native Windows UI (custom controls, animations)WinUI 3, WPFUno Platform (WinUI surface)
Web-style layouts (responsive, CSS-based)BlazorUno Platform (Skia rendering)
Simple data-entry forms, internal toolsWinFormsBlazor (Static SSR), WPF
Pixel-perfect cross-platform UIUno Platform (Skia rendering)Avalonia
Platform-native look per OSMAUI (native controls)Uno Platform (native mode)
Embedded web content in desktop/mobile appBlazor Hybrid in MAUIBlazor Hybrid in WPF/WinForms

Step 4: Performance Needs

Framework rendering architecture affects performance characteristics.

Performance FactorWinUI 3WPFWinFormsBlazor ServerBlazor WASMMAUIUno Platform
Startup timeFastFastFastFast (server)Slow (download)ModerateModerate
RenderingDirectX (native)DirectX (managed)GDI+Server-side HTMLBrowser DOMPlatform-nativeSkia or native
AOT supportN/A (Windows)N/A (Windows)N/A (Windows)N/A (server)Yes (.NET 8+)Yes (required on iOS)Yes (WASM)
GPU accelerationYesYesLimitedN/ABrowser GPUPlatform GPUSkia GPU
Memory per userLocal onlyLocal onlyLocal onlyServer circuitBrowser sandboxLocal onlyLocal only
Offline capableYesYesYesNoYesYesYes (native targets)

Step 5: Migration Path

If modernizing an existing application, the source framework constrains viable targets.

Current FrameworkNatural TargetAlternative TargetDecision Factors
UWPWinUI 3Uno PlatformWindows-only: WinUI 3. Cross-platform needed: Uno Platform.
Xamarin.FormsMAUIUno PlatformDirect API successor: MAUI. Broader platform reach: Uno Platform.
WPF (.NET Framework)WPF on.NET 8+WinUI 3 or Uno PlatformMinimal risk: WPF.NET 8+. Modern UI: WinUI 3. Cross-platform: Uno Platform.
WinForms (.NET Framework)WinForms on.NET 8+Blazor or WPFMinimal risk: WinForms.NET 8+. Better UI: WPF. Web delivery: Blazor.
ASP.NET MVC / Razor PagesBlazor (Static SSR)Stay on Razor PagesInteractive needs: Blazor. Content-heavy: Razor Pages is still valid.
React / Angular SPABlazor WebAssemblyKeep existing SPA.NET-only team: Blazor. Existing JS team: keep SPA.

Blazor Hosting Model Selection

When Blazor is the target, select a hosting model based on interactivity needs, deployment constraints, and scale.

ConcernStatic SSRInteractiveServerInteractiveWebAssemblyInteractiveAutoBlazor Hybrid
InteractivityForms onlyFullFull (after download)FullFull (native)
Server requiredYes (render)Yes (persistent circuit)Static file host onlyYes (initial), then staticNo
OfflineNoNoYesPartialYes
ScalabilityHighLimited by circuitsHighHigh (after WASM)N/A (local)
First paintFastFastSlow (WASM download)Fast (Server first)Instant
SEOYesPrerenderPrerenderPrerenderN/A
Best forContent sites, simple formsDashboards, LOB appsPublic apps, offline PWAsBest of both worldsDesktop/mobile with web UI

For detailed Blazor patterns, see [skill:dotnet-blazor-patterns].


Windows Framework Selection

When the application targets Windows only, choose based on UI richness, team expertise, and modernization goals.

Comparison Table

ConcernWinUI 3WPF (.NET 8+)WinForms (.NET 8+)
UI paradigmModern XAML, Fluent DesignClassic XAML, optional Fluent (.NET 9+)Designer-driven, drag-and-drop
RenderingDirectX (Windows App SDK)DirectX (WPF layer)GDI+
MVVM supportCommunityToolkit.MvvmCommunityToolkit.Mvvm, mature ecosystemPossible but not idiomatic
DI / Host builderYesYesYes (.NET 8+)
High-DPINativeImproved in.NET 8+PerMonitorV2 (requires config)
Dark modeNative FluentApplication.ThemeMode (.NET 9+)Experimental (.NET 9+)
Touch / penFull supportBasic supportLimited
Learning curveModerate (XAML)Moderate (XAML)Low
MaturityNewer (2021+)Very mature (2006+)Very mature (2002+)
UWP migration pathDirectIndirect (XAML differences)N/A

When to Choose Each

WinUI 3 -- best for new Windows-native applications that need modern Fluent Design, touch/pen input, and the latest Windows integration (widgets, notifications, Mica). Requires Windows 10 2004+. See [skill:dotnet-winui].

WPF on.NET 8+ -- best for teams with existing WPF expertise, applications that need the rich WPF control ecosystem, or projects migrating from WPF on.NET Framework. Fluent theme available in.NET 9+. See [skill:dotnet-wpf-modern].

WinForms on.NET 8+ -- best for rapid prototyping, internal tools, simple CRUD forms, and Windows utilities where development speed matters more than UI polish. Simplest learning curve. See [skill:dotnet-winforms-basics].


Cross-Platform Framework Selection

When the application must run on multiple platforms, compare reach, rendering model, and API surface.

Comparison Table

ConcernMAUIUno PlatformAvalonia
Target platformsiOS, Android, macOS, Windows, TizeniOS, Android, macOS, Windows, Linux, Web (WASM)iOS, Android, macOS, Windows, Linux, Web (WASM)
UI renderingPlatform-native controlsSkia (pixel-perfect) or platform-nativeSkia (pixel-perfect)
XAML dialectMAUI XAML (Xamarin.Forms successor)WinUI XAML surfaceAvalonia XAML (WPF-inspired)
Hot ReloadXAML + C# Hot ReloadXAML + C# Hot ReloadXAML Hot Reload
MaintainerMicrosoft (first-party)Uno Platform (open source, commercial support)Community (open source, commercial support)
EcosystemNuGet + MAUI Community ToolkitNuGet + Uno Toolkit + Uno ExtensionsNuGet + Avalonia community
Blazor HybridBuilt-in (BlazorWebView)SupportedNot built-in
Linux desktopNot supportedSupported (Skia + GTK/Framebuffer)Supported
Web (WASM)Not supportedSupportedSupported (browser)
Migration fromXamarin.Forms (direct)UWP (direct WinUI surface)WPF (similar XAML)

When to Choose Each

MAUI -- best for mobile-first apps targeting iOS and Android with optional Windows/macOS support. Platform-native controls provide OS-native look and feel. Direct migration path from Xamarin.Forms. See [skill:dotnet-maui-development].

Uno Platform -- best for apps that need the broadest platform reach (including Linux and Web) with a single XAML codebase. Uses WinUI XAML API surface, making it a natural path for UWP or WinUI teams going cross-platform. See [skill:dotnet-uno-platform].

Avalonia -- community-driven cross-platform framework with WPF-inspired XAML. Strong Linux desktop support. Consider when WPF-style development is preferred and community-maintained tooling is acceptable. Not owned by this plugin -- see Avalonia documentation for details.


Trade-Off Summary Matrix

A consolidated view across all frameworks for quick reference.

FrameworkPlatformsRenderingXAMLOfflineAOTBest For
Blazor ServerWebServer HTMLRazorNoN/ALOB apps, dashboards
Blazor WASMWebBrowser DOMRazorYesYesPublic web apps, PWAs
Blazor HybridMobile + DesktopWebViewRazorYesPartialWeb UI in native shell
MAUIMobile + DesktopNativeMAUI XAMLYesiOS requiredMobile-first apps
Uno PlatformAllSkia / NativeWinUI XAMLYesWASMBroadest reach
AvaloniaDesktop + MobileSkiaAvalonia XAMLYesPartialLinux desktop, WPF teams
WinUI 3WindowsDirectXWinUI XAMLYesN/AModern Windows apps
WPFWindowsDirectXWPF XAMLYesN/AMature Windows apps
WinFormsWindowsGDI+None (designer)YesN/AInternal tools, prototypes

Common Decision Scenarios

Structured guidance for frequently encountered situations. Each scenario presents the trade-offs rather than a single answer.

Scenario: New internal business application (Windows-only users)

  • Quick delivery, minimal UI: WinForms
  • Rich UI with data visualization: WPF or WinUI 3
  • Web deployment preferred: Blazor Server (InteractiveServer)
  • Future cross-platform possibility: Uno Platform or Blazor

Scenario: Customer-facing mobile app

  • iOS + Android, native look: MAUI
  • iOS + Android + Web: Uno Platform or Blazor Hybrid in MAUI
  • Existing web team: Blazor Hybrid in MAUI

Scenario: Modernizing a legacy.NET Framework WPF application

  • Minimal disruption: Migrate WPF to.NET 8+ (same XAML, modern runtime)
  • Modern UI refresh (Windows-only): Migrate to WinUI 3
  • Cross-platform needed: Migrate to Uno Platform (WinUI XAML surface)
  • Web delivery needed: Rewrite critical flows in Blazor

Scenario: Public-facing web application

  • Content-heavy, SEO: Blazor Static SSR
  • Interactive SPA: Blazor WebAssembly or InteractiveAuto
  • Real-time dashboards: Blazor Server (InteractiveServer)

Scenario: Desktop application targeting Windows, macOS, and Linux

  • Pixel-perfect UI: Uno Platform (Skia) or Avalonia
  • MAUI does not support Linux desktop

Agent Gotchas

  1. Do not recommend a single framework as "the best." Every framework has trade-offs. Present options with trade-offs and let the team decide based on their constraints.
  2. Do not recommend WinForms for new customer-facing applications. WinForms is suitable for internal tools and prototypes but lacks modern UI capabilities for customer-facing products.
  3. Do not confuse MAUI with Uno Platform target coverage. MAUI does not support Linux or Web (WASM). Uno Platform does. Verify the required platform list before recommending.
  4. Do not assume Blazor WebAssembly works offline by default. WASM runs in the browser but offline support requires explicit PWA configuration (service worker, caching strategy).
  5. Do not conflate Avalonia with a Microsoft-supported framework. Avalonia is community-maintained. It has commercial support options but is not a Microsoft product.
  6. Do not suggest migrating UWP directly to WPF. UWP's natural migration target is WinUI 3 (same XAML API surface). WPF uses a different XAML dialect.
  7. Do not overlook Blazor Hybrid as a cross-platform option. Blazor Hybrid in MAUI allows web UI skills to apply to mobile/desktop apps. It is a viable alternative to learning native XAML.
  8. Do not assume WPF is legacy. WPF on.NET 8+ is actively maintained with new features (Fluent theme in.NET 9+, performance improvements). It remains a strong choice for Windows desktop.

References

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.01%
按下载量换算41

Claude

28.1%
按下载量换算31

Cursor

18.48%
按下载量换算21

Gemini CLI

9.66%
按下载量换算11

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills