desktop

Guide C# desktop development with WPF, MAUI, and MVVM patterns.

4|2|Updated Dec 28, 2025
One-click install
npx skills add https://github.com/lazygophers/ccplugin --skill desktop-lazygophers
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: desktop
Source: https://github.com/lazygophers/ccplugin/tree/main/plugins/languages/csharp/skills/desktop
Command: npx skills add https://github.com/lazygophers/ccplugin --skill desktop-lazygophers

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides guidance and best practices for developing C# desktop applications, ensuring adherence to modern architectural patterns and platform-specific conventions.

Core Features & Use Cases

  • MVVM Pattern Implementation: Demonstrates ViewModelBase, INotifyPropertyChanged, and ICommand for robust data binding and separation of concerns.
  • WPF Data Binding: Illustrates XAML for UI elements and their connection to ViewModel properties.
  • MAUI Development: Shows examples of ObservableObject and RelayCommand for cross-platform UI development.
  • Use Case: When starting a new C# desktop project using WPF or MAUI, consult this Skill to ensure your architecture is sound and follows established patterns like MVVM.

Quick Start

Load the desktop skill to get guidance on implementing the MVVM pattern in C# for WPF applications.

Frequently Asked Questions about desktop

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement the MVVM pattern in a C# WPF application?

To implement MVVM in C# WPF, use a ViewModelBase class with INotifyPropertyChanged for data binding and ICommand for handling UI interactions. This separates UI logic from the XAML view, ensuring robust separation of concerns.

What is the standard way to handle asynchronous programming in .NET 8 desktop apps?

The standard way to handle asynchronous programming in .NET 8 desktop apps is using async/await with CancellationToken. This ensures responsive UI execution and allows proper task cancellation in C# 12 applications.

Can I use the same MVVM architecture for MAUI cross-platform desktop development?

Yes, you can use MVVM for MAUI cross-platform development. It leverages ObservableObject and RelayCommand to maintain consistent data binding and command execution across different platforms, similar to WPF.

How do I bind ViewModel properties to XAML UI elements in WPF?

You bind ViewModel properties to XAML UI elements by implementing INotifyPropertyChanged in your ViewModelBase. This updates the WPF UI automatically whenever the underlying C# property value changes.

What C# version and .NET framework specifications does this desktop development approach target?

This desktop development approach targets C# 12 and .NET 8 specifications. It provides modern standards for building WPF and MAUI applications using current asynchronous programming and MVVM architectural patterns.