Förbi Sharlene Khan
Dela med sigTweetDela med sigE-post

Teman är ett utmärkt sätt att låta dina användare anpassa din applikation utan att behöva bli alltför involverad i specifika detaljer.

Det är vanligt att moderna applikationer har möjlighet att växla mellan olika teman. Till exempel låter vissa applikationer dig växla mellan ett ljust eller mörkt tema, medan andra kan ha fler temaval.

Windows Forms är ett ramverk för användargränssnitt som låter dig skapa skrivbordsapplikationer. Du kan implementera teman i en Windows-formulärapp genom att skapa valbara knappar för varje tema.

När användaren väljer ett tema kan du ändra bakgrundsfärgen eller textfärgegenskaperna för varje element för att matcha det valda temat.

Hur man ställer in Windows Form Project

Skapa först en ny Windows-formulärapp. Fyll det nya projektet med några grundläggande kontroller, som knappar och etiketter.

  1. Skapa en nya Windows Forms-applikationen i Visual Studio.
  2. instagram viewer
  3. I det nya projektet använder du verktygslådan för att söka efter en knappkontroll.
  4. Välj knappkontroll och dra den till duken. Lägg till totalt tre knappkontroller.
  5. Använd verktygslådan, klicka och dra en etikettkontroll på duken. Placera etiketten under knapparna.
  6. Style knapparna och etiketterna med hjälp av egenskapsfönstret. Ändra egenskaperna till följande:
    Kontrollera Egendomsnamn Nytt värde
    knapp1 Storlek 580, 200
    FlatStyle Platt
    Text Användare
    knapp 2 Storlek 580, 100
    FlatStyle Platt
    Text konton
    knapp 3 Storlek 580, 100
    FlatStyle Platt
    Text Behörigheter
    etikett1 Text Copyright 2022

Hur man skapar inställningsknappen och lista över teman

För att en enkel temameny ska fungera skapar du flera knappar som representerar varje tema. Applikationen kommer att innehålla tre teman, ett "Ljus"-tema, ett "Natur"-tema och ett "Mörkt"-tema.

  1. Lägg till ytterligare en knappkontroll på arbetsytan för att representera knappen för inställningar (eller "Teman").
  2. Ändra egenskaperna för den här knappen till följande:
    Egendomsnamn Nytt värde
    namn btnThemeSettings
    FlatStyle Platt
    Storlek 200, 120
    Text teman
  3. Dra ytterligare tre knappar till duken. Dessa knappar kommer att representera de tre olika teman. Ändra egenskaperna för var och en av knapparna till följande:
    Kontrollera Egendomsnamn Nytt värde
    1:a knappen namn btnLightTheme
    Bakfärg Vit rök
    Storlek 200, 80
    FlatStyle Platt
    Text Ljus
    Synlig Falsk
    2:a knappen namn btnNatureTheme
    Bakfärg Mörkhavsgrön
    Storlek 200, 80
    FlatStyle Platt
    Text Natur
    Synlig Falsk
    3:e knappen namn btnMörkt tema
    Bakfärg DimGrå
    ForeColor Vit
    Storlek 200, 80
    FlatStyle Platt
    Text Mörk
    Synlig Falsk
  4. Dubbelklicka på teman knapp. Detta kommer att skapa en metod för att hantera "vid klick"-händelsen. Metoden körs när användaren klickar på den här knappen.
  5. Som standard är teman "Ljus", "Natur" och "Mörk" inte synliga. Inuti funktionen, lägg till funktionaliteten för att växla synligheten för knapparna för att antingen visa eller dölja.
    privattomhetbtnThemeSettings_Click(objektavsändare, EventArgs e)
    {
    btnNatureTheme. Synlig = !btnNatureTheme. Synlig;
    btnLightTheme. Synlig = !btnLightTheme. Synlig;
    btnMörkt tema. Synlig = !btnDarkTheme. Synlig;
    }
  6. Kör programmet genom att klicka på den gröna uppspelningsknappen högst upp i Visual Studio-fönstret.
  7. Under körning kommer programmet att dölja knapparna för vart och ett av de tre teman som standard.
  8. Klicka på teman knappen för att växla de teman som ska visas. Du kan fortsätta att trycka på teman knappen för att växla deras synlighet.

Hur du hanterar dina teman

Skapa ordböcker för varje tema för att lagra de olika färgerna som det kommer att använda. Detta för att du ska lagra alla dina temafärger på ett ställe, ifall du behöver använda dem flera gånger. Det underlättar också om du vill uppdatera ett tema med nya färger i framtiden.

  1. Överst i standarden Form1.cs C#-filen och inuti Form klass, skapa en global uppräkning. Denna uppräkning kommer att lagra de olika typerna av färger du kommer att använda i ett tema.
    uppräkning Temafärg
    {
    Primär,
    Sekundär,
    Tertiär,
    Text
    }
  2. Nedan förklarar du tre globala ordböcker, en för vart och ett av de tre teman. Du kan läsa mer om Ordböcker om du inte är bekant med hur man använder en ordbok i C#.
    Lexikon<Temafärg, färg> Ljus = ny ordbok<Temafärg, färg>();
    Lexikon<Temafärg, färg> Natur = ny ordbok<Temafärg, färg>();
    Lexikon<Temafärg, färg> Mörk = ny ordbok<Temafärg, färg>();
  3. Initiera ordböckerna inuti konstruktorn. Lägg till värden för de olika färgerna som varje tema kommer att använda.
    offentlig Form1()
    {
    InitializeComponent();
    // Lägg till ordböcker här
    Ljus = ny ordbok<Temafärg, färg>() {
    { Temafärg. Grundfärg. Vit rök },
    { Temafärg. Sekundär, färg. Silver },
    { Temafärg. Tertiär, färg. Vit },
    { Temafärg. Text färg. Svart }
    };
    Natur = ny ordbok<Temafärg, färg>() {
    { Temafärg. Grundfärg. DarkSeaGreen },
    { Temafärg. Sekundär, färg. AliceBlue },
    { Temafärg. Tertiär, färg. Honeydew },
    { Temafärg. Text färg. Svart }
    };
    Mörk = ny ordbok<Temafärg, färg>() {
    { Temafärg. Grundfärg. DimGray },
    { Temafärg. Sekundär, färg. DimGray },
    { Temafärg. Tertiär, färg. svart },
    { Temafärg. Text färg. Vit }
    };
    }

Hur man ändrar temat

Skapa funktioner för att hantera programmets tema. Dessa funktioner kommer att ändra bakgrundsfärgen eller textfärgen för UI-elementen på duken.

  1. Skapa en ny funktion som heter Byta tema(). Funktionen tar färgerna för ett tema som argument.
  2. Inuti funktionen ändrar du bakgrundsfärgegenskaperna för UI-elementen. De nya bakgrundsfärgerna kommer att använda färger för det valda temat.
    privattomhetByta tema(Färg primärFärg, Färg sekundärfärg, Färg tertiärfärg)
    {
    // Ändra bakgrundsfärg på knappar
    btnThemeSettings. BackColor = primärfärg;
    button1.BackColor = primärfärg;
    button2.BackColor = sekundärfärg;
    button3.BackColor = sekundärfärg;
    detta.BackColor = tertiaryColor;
    }
  3. Skapa en ny funktion som heter ChangeTextColor(). Du kan använda detta för att ändra färgen på texten mellan mörk och ljus. Detta för att säkerställa att text på mörk bakgrund fortfarande är läsbar.
    privattomhetChangeTextColor(FärgtextFärg)
    {
    // Förändra Färg avtext
    button1.ForeColor = textColor;
    button2.ForeColor = textColor;
    button3.ForeColor = textColor;
    label1.ForeColor = textColor;
    btnThemeSettings. ForeColor = textColor;
    }
  4. Från designern, dubbelklicka på knappen "Ljus"-knappen. Detta kommer att öppna koden bakom filen och generera en händelsehanterare för när användaren klickar på knappen.
  5. Inuti händelsehanteraren använder du Byta tema() och ChangeTextColor() funktioner. Mata in färgerna som temat använder. Du kan hämta dessa färger från temaordboken "Ljus".
    privattomhetbtnLightTheme_Click(objektavsändare, EventArgs e)
    {
    Byta tema(Ljus[Temafärg. Primär], Ljus[Temafärg. Sekundär], Ljus[Temafärg. Tertiär]);
    ChangeTextColor(Ljus[Temafärg. Text]);
    }
  6. Gå tillbaka till designern och klicka på knapparna "Natur" och "Mörk". Använd Byta tema() och ChangeTextColor() funktioner i deras händelsehanterare också.
    privattomhetbtnNatureTheme_Click(objektavsändare, EventArgs e)
    {
    Byta tema(Natur[Temafärg. Primär], Natur[Temafärg. Sekundär], Natur[Temafärg. Tertiär]);
    ChangeTextColor(Natur[Temafärg. Text]);
    }
    privattomhetbtnDarkTheme_Click(objektavsändare, EventArgs e)
    {
    Byta tema(Mörk[Temafärg. Primär], Mörk[Temafärg. Sekundär], Mörk[Temafärg. Tertiär]);
    ChangeTextColor(Mörk[Temafärg. Text]);
    }
  7. Som standard ska temat vara inställt på "Ljus"-temat när användaren först öppnar appen. I konstruktorn, under ordböckerna, använd Byta tema() och ChangeTextColor() funktioner.
    Byta tema(Ljus[Temafärg. Primär], Ljus[Temafärg. Sekundär], Ljus[Temafärg. Tertiär]);
    ChangeTextColor(Ljus[Temafärg. Text]);
  8. Kör programmet genom att klicka på den gröna uppspelningsknappen högst upp i Visual Studio-fönstret.
  9. Som standard använder applikationen "Ljus"-temat och tillämpar det grå färgschemat på UI-kontrollerna. Växla på temanknappen för att se listan med teman.
  10. Klicka på temat Natur.
  11. Klicka på det mörka temat.

Skapa applikationer med Windows Forms

Många applikationer låter användaren växla mellan flera teman. Du kan lägga till teman i ett Windows Forms-program genom att skapa alternativ som användaren kan välja.

När användaren klickar på ett tema kan du ändra bakgrundsfärg, text eller andra egenskaper för att matcha färgerna som används i det valda temat.

Färgerna för vart och ett av teman använder Visual Studios inbyggda färger. Du kommer att behöva använda ett korrekt färgschema för att ge användarna en bättre upplevelse. Du kan lära dig mer om de olika sätten du kan välja ett färgschema för din app.

Hur man väljer ett färgschema för din app: 10 saker att tänka på

Läs Nästa

Dela med sigTweetDela med sigE-post

Relaterade ämnen

  • Programmering
  • Windows
  • Programmering

Om författaren

Sharlene Khan (45 artiklar publicerade)

Shay arbetar heltid som mjukvaruutvecklare och tycker om att skriva guider för att hjälpa andra. Hon har en kandidatexamen i IT och har tidigare erfarenhet av kvalitetssäkring och handledning. Shay älskar att spela och spela piano.

Mer från Sharlene Khan

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera