A témák nagyszerű lehetőséget kínálnak arra, hogy a felhasználók személyre szabják az alkalmazást anélkül, hogy túlságosan bele kellene bonyolódniuk bizonyos részletekbe.
A modern alkalmazásoknál gyakori, hogy lehetőség van váltani a különböző témák között. Egyes alkalmazások például lehetővé teszik a világos és a sötét téma közötti váltást, míg mások több téma közül választhatnak.
A Windows Forms egy UI keretrendszer, amely lehetővé teszi asztali alkalmazások létrehozását. Témákat implementálhat egy Windows űrlapalkalmazásban, ha kiválasztható gombokat hoz létre az egyes témákhoz.
Amikor a felhasználó kiválaszt egy témát, módosíthatja az egyes elemek háttérszínét vagy szövegszín tulajdonságait, hogy megfeleljen a kiválasztott témának.
A Windows Form Project beállítása
Először hozzon létre egy új Windows űrlapalkalmazást. Töltse fel az új projektet néhány alapvető vezérlővel, például gombokkal és címkékkel.
- Hozzon létre egy új Windows Forms alkalmazás a Visual Studioban.
- Az új projektben az eszköztár segítségével kereshet gombvezérlőt.
- Válaszd ki a gombos vezérlés és húzza a vászonra. Adjon hozzá összesen három gombvezérlőt.
- Az eszköztár segítségével kattintson és húzza a címkevezérlés a vászonra. Helyezze a címkét a gombok alá.
- A tulajdonságok ablak segítségével alakítsa ki a gombok és címkék stílusát. Módosítsa a tulajdonságokat a következőkre:
Ellenőrzés Ingatlan neve Új érték gomb1 Méret 580, 200 FlatStyle Lakás Szöveg Felhasználók gomb2 Méret 580, 100 FlatStyle Lakás Szöveg Fiókok gomb3 Méret 580, 100 FlatStyle Lakás Szöveg Engedélyek címke1 Szöveg Copyright 2022
Hogyan lehet létrehozni a Beállítások gombot és a témák listáját
Az egyszerű témamenü működéséhez hozzon létre több gombot az egyes témák megjelenítéséhez. Az alkalmazás három témát fog tartalmazni, egy "világos" témát, egy "természet" és egy "sötét" témát.
- Adjon hozzá egy másik gombvezérlőt a vászonhoz a beállítások (vagy "Témák") gomb megjelenítéséhez.
- Módosítsa ennek a gombnak a tulajdonságait a következőkre:
Ingatlan neve Új érték Név btnThemeSettings FlatStyle Lakás Méret 200, 120 Szöveg Témák - Húzz még három gombot a vászonra. Ezek a gombok a három különböző témát képviselik. Módosítsa az egyes gombok tulajdonságait a következőkre:
Ellenőrzés Ingatlan neve Új érték 1. gomb Név btnLightTheme BackColor Fehér füst Méret 200, 80 FlatStyle Lakás Szöveg Könnyű Látható Hamis 2. gomb Név btnNatureTheme BackColor Sötét tengerzöld Méret 200, 80 FlatStyle Lakás Szöveg Természet Látható Hamis 3. gomb Név btnDarkTheme BackColor DimGray ForeColor fehér Méret 200, 80 FlatStyle Lakás Szöveg Sötét Látható Hamis - Kattintson duplán a Témák gomb. Ez létrehoz egy módszert a „kattintásra” esemény kezelésére. A módszer akkor fut le, amikor a felhasználó erre a gombra kattint.
- Alapértelmezés szerint a „Fény”, „Természet” és „Sötét” témák nem lesznek láthatók. A funkción belül adja hozzá azt a funkciót, amellyel a gombok láthatóságát váltogathatja a megjelenítéshez vagy az elrejtéshez.
magánüresbtnThemeSettings_Click(objektum küldője, EventArgs e)
{
btnNatureTheme. Látható = !btnNatureTheme. Látható;
btnLightTheme. Látható = !btnLightTheme. Látható;
btnDarkTheme. Látható = !btnDarkTheme. Látható;
} - Futtassa az alkalmazást a Visual Studio ablakának tetején található zöld lejátszás gombra kattintva.
- Futás közben az alkalmazás alapértelmezés szerint elrejti mind a három téma gombjait.
- Kattintson a Témák gombot a megjelenítendő témák váltásához. Továbbra is megnyomhatja a gombot Témák gombot a láthatóságuk váltásához.
A témák kezelése
Hozzon létre szótárakat minden témához, hogy tárolja a különböző színeket, amelyeket használni fog. Ez azért van így, hogy az összes témaszínt egy helyen tárolja, arra az esetre, ha többször kell használnia őket. Azt is megkönnyíti, ha a jövőben új színekkel szeretne frissíteni egy témát.
- Az alapértelmezett érték tetején Form1.cs C# fájlban és a Forma osztályban, hozzon létre egy globális enumot. Ez a felsorolás tárolja a témában használt különböző színtípusokat.
enum ThemeColor
{
Elsődleges,
Másodlagos,
Harmadlagos,
Szöveg
} - Alatta deklaráljon három globális szótárat, mindhárom témához egyet. A szótárakról bővebben olvashat, ha nem ismeri az a szótár C# nyelven.
Szótár<ThemeColor, Color> Fény = új szótár<ThemeColor, Color>();
Szótár<ThemeColor, Color> Természet = új szótár<ThemeColor, Color>();
Szótár<ThemeColor, Color> Sötét = új szótár<ThemeColor, Color>(); - A konstruktoron belül inicializálja a szótárakat. Adjon hozzá értékeket az egyes témák által használt különböző színekhez.
nyilvános Form1()
{
InitializeComponent();
// Szótárak hozzáadása ide
Fény = új szótár<ThemeColor, Color>() {
{ ThemeColor. Elsődleges, Színes. Fehér füst },
{ ThemeColor. Másodlagos, Színes. ezüst },
{ ThemeColor. Harmadfokú, Színes. Fehér },
{ ThemeColor. Szöveg szín. fekete }
};
Természet = új szótár<ThemeColor, Color>() {
{ ThemeColor. Elsődleges, Színes. Sötét tengerzöld },
{ ThemeColor. Másodlagos, Színes. AliceBlue},
{ ThemeColor. Harmadfokú, Színes. mézharmat },
{ ThemeColor. Szöveg szín. fekete }
};
Sötét = új szótár<ThemeColor, Color>() {
{ ThemeColor. Elsődleges, Színes. DimGray },
{ ThemeColor. Másodlagos, Színes. DimGray },
{ ThemeColor. Harmadfokú, Színes. fekete },
{ ThemeColor. Szöveg szín. Fehér }
};
}
Hogyan változtassuk meg a témát
Hozzon létre funkciókat az alkalmazás témájának kezeléséhez. Ezek a funkciók megváltoztatják a vásznon lévő UI-elemek háttérszínét vagy szövegszínét.
- Hozzon létre egy új függvényt, melynek neve Téma módosítása(). A függvény argumentumként veszi a téma színeit.
- A függvényen belül módosítsa a felhasználói felület elemeinek háttérszín tulajdonságait. Az új háttérszínek a kiválasztott téma színeit fogják használni.
magánüresChangeTheme(Elsődleges szín, másodlagos szín, harmadlagos szín)
{
// A gombok háttérszínének módosítása
btnThemeSettings. BackColor = elsődleges szín;
button1.BackColor = elsődleges szín;
button2.BackColor = másodlagos szín;
gomb3.BackColor = másodlagos szín;
ez.BackColor = tertiaryColor;
} - Hozzon létre egy új függvényt, melynek neve ChangeTextColor(). Ezzel módosíthatja a szöveg színét sötét és világos között. Ezzel biztosítható, hogy a sötét háttéren lévő szöveg továbbra is olvasható legyen.
magánüresChangeTextColor(Színes szövegSzín)
{
// változás szín nak,-nekszöveg
gomb1.ForeColor = textColor;
gomb2.ForeColor = textColor;
gomb3.ForeColor = textColor;
label1.ForeColor = textColor;
btnThemeSettings. ForeColor = textColor;
} - A tervezőben kattintson duplán a "Light" gombvezérlőre. Ez megnyitja a kód mögötti fájlt, és létrehoz egy eseménykezelőt, amikor a felhasználó rákattint a gombra.
- Az eseménykezelőben használja a Téma módosítása() és ChangeTextColor() funkciókat. Adja meg a téma által használt színeket. Ezeket a színeket lekérheti a "Light" témaszótárból.
magánüresbtnLightTheme_Click(objektum küldője, EventArgs e)
{
ChangeTheme(Könnyű[ThemeColor. Elsődleges], Könnyű[ThemeColor. Másodlagos], Könnyű[ThemeColor. Harmadlagos]);
ChangeTextColor(Könnyű[ThemeColor. Szöveg]);
} - Menjen vissza a tervezőhöz, és kattintson a "Nature" és a "Dark" gombra. Használja a Téma módosítása() és ChangeTextColor() funkciókat az eseménykezelőikben is.
magánüresbtnNatureTheme_Click(objektum küldője, EventArgs e)
{
ChangeTheme(Természet[ThemeColor. Elsődleges], Természet[ThemeColor. Másodlagos], Természet[ThemeColor. Harmadlagos]);
ChangeTextColor(Természet[ThemeColor. Szöveg]);
}
magánüresbtnDarkTheme_Click(objektum küldője, EventArgs e)
{
ChangeTheme(Sötét[ThemeColor. Elsődleges], Sötét[ThemeColor. Másodlagos], Sötét[ThemeColor. Harmadlagos]);
ChangeTextColor(Sötét[ThemeColor. Szöveg]);
} - Alapértelmezés szerint a témát a „Light” témára kell állítani, amikor a felhasználó először nyitja meg az alkalmazást. A konstruktorban a szótárak alatt használja a Téma módosítása() és ChangeTextColor() funkciókat.
ChangeTheme(Könnyű[ThemeColor. Elsődleges], Könnyű[ThemeColor. Másodlagos], Könnyű[ThemeColor. Harmadlagos]);
ChangeTextColor(Könnyű[ThemeColor. Szöveg]); - Futtassa az alkalmazást a Visual Studio ablakának tetején található zöld lejátszás gombra kattintva.
- Alapértelmezés szerint az alkalmazás a „Világos” témát használja, és a szürke színsémát alkalmazza a felhasználói felület vezérlőire. A témák listájának megtekintéséhez nyomja meg a témák gombot.
- Kattintson a Természet témára.
- Kattintson a Sötét témára.
Alkalmazások létrehozása Windows űrlapokkal
Számos alkalmazás lehetővé teszi a felhasználó számára, hogy váltson több téma között. Témákat adhat hozzá a Windows Forms-alkalmazásokhoz úgy, hogy a felhasználó számára kiválasztható beállításokat hoz létre.
Amikor a felhasználó rákattint egy témára, módosíthatja a háttérszínt, a szöveget vagy bármilyen más tulajdonságot, hogy megfeleljen a kiválasztott témában használt színeknek.
Az egyes témák színei a Visual Studio beépített színeit használják. Megfelelő színsémát kell használnia, hogy jobb élményt nyújtson a felhasználóknak. További információ az alkalmazás színsémájának kiválasztásának különböző módjairól.