Blog Null Reference Exception - kategorie WinForms
Pokud potřebujete v .NET vyvolat dialog pro výběr adresáře ve Windows desktopových (těžkých) aplikacích tak to samozřejmě můžete udělat přímo zabudovanými prostředky .NET Frameworku. Ale bude to ten správný standardní Windows dialog?
Přestože je technologie WPF asi ta nejlepší volba pro tvorbu desktopových aplikací, je zde horší podpora pokud děláme klasicky vypadající Windows aplikace. Pro modální dialogy zde nejsou všechny možnosti jako u Windows Forms. Proto jsem udělal pomocnou třídu DialogWindow sloužící jako base třída pro okna dialogů.
Podíváme se, jak třída funguje.
Systémy Windows Vista a Windows 7 již tady sice nějaký ten pátek jsou, ale jednak ze zkušenosti vím, že jsou i zákazníci (hlavně korporace), kteří např. k Windows 7 ještě nepřičichli. A dále rozhodně ne všichni mají aplikace pro tyto systémy správně připravené nebo nevyužívají některé vlastnosti, které např. vylepšují vzhled celé aplikace. Rád bych proto v několika článcích uvedl některé tipy / postřehy jak vylepšit uživatelské rozhraní (UI) desktopových (tlustých) aplikací, abyste uživatelům dopřáli to pravé User Experience a využili možnosti těchto zatím nejnovějších Windows systémů. (Než nám tyto desktopové aplikace nahradí metro a budeme mít úplně jiné starosti...) Technologicky se tyto články budou zabývat jak Windows Forms tak WPF.
Pokud potřebujeme zobrazit v aplikaci např. bitmapu nebo iconu apod., většinou jí umístíme do projektu jako resource a přes ResourceManager načteme. Někdy ale pokud vytváříme samostatný .NET control, componentu nebo klidně jen nějakou obecnou sdílenou třídu, tak se může hodit možnost umístit takovýto zdroj jako je bitmapa nebo icona přímo do kódu, a tím nebude třída závislá na konkrétním projektu nebo namespace resourcu.