WPF Bootcamp

WPF Bootcamp Overview

This bootcamp is a conceptual foundation, not a complete WPF curriculum. It will not teach you everything you need to know to build real WPF applications from scratch — and it is not trying to.

What it will do is give you a clear mental model for how WPF works: how its systems fit together, why things behave the way they do, and how to reason about any WPF codebase you encounter. Getting started with WPF is easy. Building complex, maintainable views is genuinely hard — and no single course changes that.

The emphasis is standard WPF first. Whenever a concept matters to InkkSlinger, you will also get a short parity note so the mental model transfers cleanly into this repository.

This bootcamp won't replace the official docs. For a complete reference — controls, APIs, advanced topics, animations, custom controls, threading, and more — keep these open alongside this course:

What this bootcamp covers

  • How WPF thinks about UI: trees, properties, events, commands, layout, resources, and templating.
  • How MVVM separates view structure from state and behavior without turning the codebase into ceremony.
  • How to move from isolated controls to composable, application-scale screens.

How to use this bootcamp

Read the pages in order. Each lesson builds on the previous one, and the later topics assume you understand binding, layout, and the content model.

Expected outcome

By the end, you should be able to inspect almost any WPF view and explain how data, commands, templates, and layout cooperate to produce behavior — not necessarily build one from scratch.

The course map

  1. Application mental model
  2. XAML fundamentals
  3. Layout deep dive
  4. Controls and content model
  5. Dependency properties explained
  6. Routed events and commands
  7. Data binding fundamentals
  8. MVVM core workflow
  9. Collections and item controls
  10. Styling, templates, and reuse
  11. Validation and user input
  12. Navigation and application composition
  13. Final walkthrough
<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Bootcamp"
    Width="900"
    Height="640">
    <Grid>
        <TextBlock
            Text="Learn the model first. Syntax gets easier after that."
            VerticalAlignment="Center"
            HorizontalAlignment="Center"
            FontSize="28" />
    </Grid>
</Window>

Common mistakes

  • Trying to memorize every control first instead of learning the layout, binding, and templating systems.
  • Treating MVVM as a rule to obey mechanically instead of a way to isolate state and interactions.
  • Skipping the fundamentals and jumping straight to frameworks, behaviors, or custom controls.

InkkSlinger parity note: InkkSlinger aims for WPF-style authoring inside a MonoGame host. The better you understand standard WPF concepts, the easier the project API becomes to reason about.

Next, learn the mental model behind a WPF application before touching syntax details.