Building A Splash Screen With Async Loading In C# And WPF

Sdílet
Vložit
  • čas přidán 2. 08. 2024
  • You know it. I know it. We all know it.
    Every single good desktop application has a fancy splash screen.
    And now... you can build your very own in C# and WPF! In this tutorial, I'll walk through how to build a WPF splash screen that supports early cancellation as well as asynchronous loading.
    Because what's the biggest gotcha with these?
    Threading.
    So let's ensure we're executing our UI and background work on the right threads!
    ----
    🔑 Membership & Subscriptions:
    - 📨 Weekly Newsletter: weekly.devleader.ca
    - 🏘️ Private Discord Community: / discord
    - 📽️ CZcams Membership: / @devleader
    🧠 Courses:
    - All Courses: www.devleader.ca/courses
    - Getting Started with C#: dometrain.com/course/getting-...
    - Deep dive C#: dometrain.com/course/deep-div...
    - C# Zero to Hero BUNDLE: dometrain.com/bundle/from-zer...
    - Refactoring For C# Devs: dometrain.com/course/from-zer...
    - [FREE] Intro to Software Development: • [FREE MINI COURSE] - I...
    🗣️ Social Media & Links:
    - All My Links: linktr.ee/devleader
    - Blog: www.devleader.ca/
    - TikTok: / devleader
    - LinkedIn: / nickcosentino
    - Threads: threads.net/@dev.leader
    - Twitter: / devleaderca
    - Facebook: / devleaderca
    - Instagram: / dev.leader
    - GitHub: github.com/ncosentino/
    - Twitch: / devleaderca
    - CZcams: / @devleader
    ❤️ Affiliations & Products/Services That I Love:
    - VPS hosting from RackNerd: my.racknerd.com/aff.php?aff=9013
    - VPS hosting from Contabo: www.jdoqocy.com/click-1010286...
    - My newsletter platform ConverKit: convertkit.com/?lmref=c5X7KQ
    - My newsletter referral system SparkLoop: dash.sparkloop.app/signup?aff...
    - My AI shorts helper Opus Clip: opus.pro/?via=2f9e97
    - I try to help answer questions at Quora: www.quora.com/quoraplus?ch=10...
    - My favorite computer parts store Newegg: click.linksynergy.com/fs-bin/...
    - My favorite supplement store Bulk Supplements: glnk.io/63qn/devleader
    ----
    #dotnet #csharp #wpf #frontend

Komentáře • 7

  • @DevLeader
    @DevLeader  Před 23 dny

    💡 Learn how to program in C#:
    - dometrain.com/course/getting-started-csharp?affcode=1115529_nl-teyzg
    🧠Deep dive on C#:
    - dometrain.com/course/deep-dive-csharp?affcode=1115529_nl-teyzg
    🎁Zero to Hero C# Bundle:
    - dometrain.com/bundle/from-zero-to-hero-csharp/?affcode=1115529_nl-teyzg
    💪 Skill up your refactoring:
    - dometrain.com/course/from-zero-to-hero-refactoring-for-csharp-developers?affcode=1115529_nl-teyzg
    ✉ Subscribe to my free software engineering newsletter:
    - subscribe.devleader.ca

  • @HOWYOUDOIN884
    @HOWYOUDOIN884 Před 2 dny

    Can you say why you seemingly borrowed the term Presenter from MVP (Model-View-Presenter)? It just seems odd not to use MVVM when that is the pattern kinda tied to WPF.

    • @DevLeader
      @DevLeader  Před 2 dny

      @@HOWYOUDOIN884 it's because I generally don't find MVVM gives me the design that I want.
      I feel like MVVM tries to put us down a path where we should be able to swap the user control out and not have to change the other parts of code. As in, this seems to be one of the benefits we get with it.
      In practice though:
      - I can probably count on my hand how many times I've just needed to swap controls out without redesigning things
      - The View / View Model part still ties us heavily to WPF tech. I'd rather have an abstraction from the presentation technology itself, not just a user control.
      So I like what MVVM was trying to accomplish, but in practice it was never delivering on expectations. For me, having a controller or presenter always fit better. I leveraged other patterns to get the decoupling from user interface technology that I was interested in

  • @gnaarW
    @gnaarW Před 22 dny

    WPF is still a thing? 😮

    • @DevLeader
      @DevLeader  Před 22 dny +2

      @@gnaarW it's not like it just magically stopped working 😁

    • @HOWYOUDOIN884
      @HOWYOUDOIN884 Před 2 dny

      It's very powerful, but challenging to learn if you grew up on winforms. It's like a Ferrari and winforms is a 1990 Toyota.