Tworzenie Aplikacji Windows Forms C# Visual Studio 2019
Podczas tworzenia programu z szablonu Aplikacja Windows Forms (.NET Framework):
- Tworzymy aplikację Windows Forms.
W panelu Eksplorator Rozwiązań zmieniamy nazwę pliku Form1.cs na znaczącą OknoGlowne.cs.
- W panelu Właściwości zmieniamy właściwości okna OknoGlowne np.
BackColor,
BackgroungImage,
DoubleBuffered,
ForeColor,
FormBorderStyle,
Icon - zamiana png na ico np. Convertio
lub Convertico.com,
MaximizeBox,
MinimizeBox,
ShowInTaskbar,
Size,
StartPosition,
Text,
WindowState.
Tworzenie i obsługa menu przypisanego do ikony aplikacji ukrytej w trayu.
- Z grupy Typowe kontrolki panelu Przybornik
przeciągamy na pole formularza kontrolkę NotifyIcon.
Pojawi się w dolnym pasku panelu komponentów.
Aby ikona była widoczna w trayu zmieniamy właściwość Icon podstawiając plik *.ico.
Właściwość Text odpowiada za wyświetlanie tekstu po najechaniu myszką na ikonkę.
- Tworzenie menu związanego z ikoną:
- Z grupy Menu i paski narzędzi przeciągamy kontrolkę ContextMenuStrip na okno główne.
Pojawi się w panelu komponentów.
Klikając na widoczny w prawym górnym rogu kontrolki trójkącik inteligentnego tagu wybieramy Edytuj elementy....
- W otwartym oknie Edytor kolekcji elementów zmieniamy właściwości kontrolki
np. BackColor i ShowImageMargin.
- Z listy rozwijalnej Zaznacz element i dodaj go do poniższej listy: okna,
wybieramy MenuItem i dodajemy przyciskiem Dodaj.
Zmieniamy właściwości np. (Name), ForeColor, Text.
Podobnie można z listy rozwijalnej wybrać Separator i kolejne MenuItem, zmieniając ich właściwości.
Tworzenie menu kontekstowego kończymy klikając OK.
- Ostatnie 2 punkty można również wykonać poruszając się bezpośrednio po menu w oknie głównym i właściwościach jego składników.
- Aby połączyć ikonę aplikacji w panelu powiadomień paska zadań z utworzonym menu,
w kontrolce NotifyIcon zmieniamy właściwość ContextMenuStrip, ustawiając w niej nazwę menu kontekstowego contextMenuStrip1.
- Z utworzonego menu w ContextMenuStrip wybieramy pozycje menu i klikając dwukrotnie tworzymy obsługę zdarzenia kliknięcia np.
dla pozycji menu kontrolki ToolStripMenuItem o nazwie Zakończ wpisujemy kod:
Application.Exit();
- Aby ukazało się okno główne po podwójnym kliknięciu ikony w trayu, dodajemy obsługę zdarzenia podwójnego kliknięcia kontrolki typu NotifyIcon:
po podwójnym kliknięciu na niej generujemy kod zdarzenia podwójnego kliknięcia i wpisujemy dalej kod:
if (this.WindowState == FormWindowState.Minimized)
this.WindowState = FormWindowState.Normal;
this.Visible = true;
- Aby aplikacja nie kończyła działania przy zamykaniu formularza, lecz zwijała się do panelu powiadomień paska zadań,
przechwycimy zdarzenie FormClosing okna głównego wpisując kod:
if (e.CloseReason == CloseReason.UserClosing){
e.Cancel = true;
this.Hide();
}
Zmiana właściwości aplikacji:
otwieramy okno dialogu właściwości aplikacji klikając prawym klawiszem myszy nazwę projektu w panelu
Eksplorator Rozwiązań i wybierając Właściwości.
- Ustawiamy ikonę pliku aplikacji w karcie Aplikacja w polu Ikona.
- Informacje o projekcie można wpisać po kliknięciu przycisku Informacje o zestawie...
karty Aplikacja.
Zmiany zostaną naniesione w pliku AssemblyInfo.cs.
Można je dalej wykorzystać np. w dodawaniu okna About.
Dodawanie okna dialogowego z informacjami o programie (tytuł, wersja, opis, nazwa, copyright, firma).
Wykonuje się podobnie jak dodawanie zwykłego okna.
- Okno dodajemy do projektu klikając prawym klawiszem myszy nazwę projektu w panelu Eksplorator rozwiązań
i wybierając Dodaj -> Nowy element....
Po otwarciu okna Dodaj nowy element wybieramy szablon Informacje o polu (Windows Forms).
Nadajemy mu nazwę (np. AboutForm.cs) i klikamy przycisk Dodaj.
- Aby uruchomić okno z informacjami o programie:
- otwieramy okno główne w trybie kodu.
Dodajemy kod tworzący obiekt nowego okna w klasie okna głównego np. zaraz na początku jej definicji:
AboutForm aboutForm = new AboutForm();
- Tworzymy obsługę zdarzenia związanego z otwarciem nowego okna (np. kliknięcie przycisku, wybór z menu).
Wypełniamy treść funkcji zdarzenia kodem:
aboutForm.ShowDialog();
// aboutForm.Show();
- Wygenerowane właściwości pozwalają na użycie ich w innych oknach np.:
Text = aboutForm.AssemblyTitle;
Dodawanie i uruchamianie okna dialogowego programu.
- Okno dodajemy do projektu klikając prawym klawiszem myszy nazwę projektu w panelu Eksplorator Rozwiązań
i wybierając Dodaj -> Nowy element....
Po otwarciu okna Dodaj nowy element wybieramy szablon Formularz (Windows Forms).
Nadajemy mu nazwę (np. NoweOkno.cs) i klikamy przycisk Dodaj.
- Aby uruchomić okno:
- otwieramy okno główne w trybie kodu.
Dodajemy kod tworzący obiekt nowego okna w klasie okna głównego np. zaraz na początku jej definicji:
NoweOkno noweForm = new NoweOkno();
- Tworzymy obsługę zdarzenia związanego z otwarciem nowego okna (np. kliknięcie przycisku, wybór z menu).
Wypełniamy treść funkcji zdarzenia kodem:
noweForm.ShowDialog();
// noweForm.Show();
Paski narzędzi i kontener pasków narzędzi.
- Kontrolki pasków znajdują się w węźle Menu i paski narzędzi panelu Przybornik.
ToolStripContainer pozwala indywidualnie dostosować położenie pasków MenuStrip i ToolStrip.
Po przeciągnięciu kontrolki, w jej inteligentnym tagu wybieramy Zadokuj z wypełnieniem w formularzu,
wypełniając nią pole okna.
- W odpowiednie miejsca możemy przeciągnąć paski MenuStrip, ToolStrip i StatusStrip.
- Panel Konspekt dokumentu pozwala w prosty sposób zmienić położenie pasków.
- Do przesuwania pasków MenuStrip i ToolStrip przez użytkownika, niezbędny jest kropkowany uchwyt.
Za widoczność uchwytu odpowiada właściwość GripStyle.