A first in C# and WinForms: started writing a program for changing screen resolution


Since i have recently became a Windows user, some specific needs emerged for specific reasons. I needed a program to change screen resolution for me whenever I would lock my session or login/logoff, or even start my session (change on autostart, yeah maybe i will port it as a Windows Service later) with one screen resolution and then switch to another right before ending session.

I had no prior experience with WinForms and I don't recall having any meaningful experience witth C#. I had experience with IntelliJ and other JetBrains IDEs, and I dived straight into a fresh install of Visual Studio 2022 with Resharper. Today morning.

The Designer in VS feels absolutely excellent to me, my first attempt with a GUI designer that went smoothly and led to me actually creating something that works! So far I am lazy and avoid perfectionism so everything is loosely aligned with Drawing class when I look underneath but that allows for incrementalism and unhindered creativity!

Making an app have a notification icon in taskbar and minimize to it was surprisingly easy! There are problematic quirks but it is so very easy to find answers! Finding out how to get screen resolution or how to distinguish a logoff/shutdown from an Alt-F4 both didn't take long!

Ok when it now came to actually changng the screen resolution I still haven't figured it out although I'm getting closer to it. That's where be dragons.


Mind the date of this post, consider comparing contemporary commits if you're from the future. (inb4 yes i now that future is immediate)

2022-02-05: a follow-up: An update on my C#/WinForms app that changes screen resolution