Udostępnij przez


Wskazówki: demonstrowanie dziedziczenia Visual

Dziedziczenie wizualne umożliwia wyświetlanie kontrolek w formularzu podstawowym i dodawanie nowych kontrolek. W tym przewodniku utworzysz formularz podstawowy i skompilujesz go w bibliotece klas. Zaimportujesz tę bibliotekę klas do innego projektu i utworzysz nowy formularz dziedziczony z formularza podstawowego. W tym przewodniku dowiesz się, jak wykonywać następujące działania:

  • Utwórz projekt biblioteki klas zawierający formularz podstawowy.

  • Dodaj przycisk z właściwościami, które klasy pochodne formularza podstawowego mogą modyfikować.

  • Dodaj przycisk, którego nie można modyfikować przez dziedziczenie formularza podstawowego.

  • Utwórz projekt zawierający formularz, który dziedziczy z BaseFormelementu .

Ostatecznie ten przewodnik pokaże różnicę między kontrolkami prywatnymi i chronionymi w dziedziczonej postaci.

Uwaga

Nie wszystkie kontrolki obsługują dziedziczenie wizualizacji z formularza podstawowego. Następujące kontrolki nie obsługują scenariusza opisanego w tym przewodniku:

Te kontrolki w odziedziczonym formularzu są zawsze tylko do odczytu niezależnie od używanych modyfikatorów (private, protected, lub public).

Tworzenie projektu biblioteki klas zawierającego formularz podstawowy

  1. W programie Visual Studio z menu Plik wybierz pozycję Nowy>projekt, aby otworzyć okno dialogowe Nowy projekt.

  2. Utwórz aplikację Windows Forms o nazwie BaseFormLibrary.

  3. Aby utworzyć bibliotekę klas zamiast standardowej aplikacji Windows Forms, w Eksplorator rozwiązań kliknij prawym przyciskiem myszy węzeł projektu BaseFormLibrary, a następnie wybierz polecenie Właściwości.

  4. We właściwościach projektu zmień typ danych wyjściowych z Aplikacji systemu Windows na Bibliotekę klas.

  5. W menu Plik wybierz pozycję Zapisz wszystko, aby zapisać projekt i pliki w lokalizacji domyślnej.

Następne dwie procedury dodają przyciski do formularza podstawowego. Aby zademonstrować dziedziczenie wizualizacji, możesz nadać przyciski różnym poziomom dostępu, ustawiając ich Modifiers właściwości.

Dodawanie przycisku dziedziczonego formularza podstawowego może modyfikować

  1. Otwórz formularz Form1 w projektancie.

  2. Na karcie Wszystkie formularze systemu Windows przybornika kliknij dwukrotnie przycisk, aby dodać przycisk do formularza. Użyj myszy, aby ustawić i zmienić rozmiar przycisku.

  3. W okno Właściwości ustaw następujące właściwości przycisku:

    • Ustaw właściwość Text na Say Hello.

    • Ustaw właściwość (Name) na wartość btnProtected.

    • Ustaw właściwość Modyfikatory na Wartość Chroniona. Dzięki temu formularze dziedziczone z formularza Form1 mogą modyfikować właściwości obiektu btnProtected.

  4. Kliknij dwukrotnie przycisk Say Hello, aby dodać procedurę obsługi zdarzeń dla zdarzenia Kliknij.

  5. Dodaj następujący wiersz kodu do programu obsługi zdarzeń:

    MessageBox.Show("Hello, World!")
    
    MessageBox.Show("Hello, World!");
    

Dodaj przycisk, którego nie można modyfikować przez dziedziczących formularza podstawowego

  1. Przejdź do widoku projektu, klikając kartę Form1.vb [Projekt], Form1.cs [Projekt] lub Form1.jsl [Projekt] nad edytorem kodu lub naciskając klawisz F7.

  2. Dodaj drugi przycisk i ustaw jego właściwości w następujący sposób:

    • Ustaw właściwość Text na Say Goodbye.

    • Ustaw właściwość (Name) na wartość btnPrivate.

    • Ustaw właściwość Modyfikatory na Prywatny. Uniemożliwia to dziedziczenie formularzy z formularza Form1 w celu zmodyfikowania właściwości obiektu btnPrivate.

  3. Kliknij dwukrotnie przycisk Powiedz pożegnanie, aby dodać procedurę obsługi zdarzeń dla zdarzenia Kliknij. Umieść następujący wiersz kodu w procedurze zdarzenia:

    MessageBox.Show("Goodbye!")
    
    MessageBox.Show("Goodbye!");
    
  4. W menu Kompilacja wybierz pozycję Kompiluj bibliotekę BaseForm, aby skompilować bibliotekę klas.

    Po utworzeniu biblioteki można utworzyć nowy projekt dziedziczony po właśnie utworzonym formularzu.

Tworzenie projektu zawierającego formularz dziedziczący z formularza podstawowego

  1. W menu Plik wybierz pozycję Dodaj, a następnie pozycję Nowy projekt, aby otworzyć okno dialogowe Dodawanie nowego projektu.

  2. Utwórz aplikację Windows Forms o nazwie InheritanceTest.

Dodawanie dziedziczonego formularza

  1. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt InheritanceTest, wybierz pozycję Dodaj, a następnie wybierz pozycję Nowy element.

  2. W oknie dialogowym Dodawanie nowego elementu wybierz kategorię Formularze systemu Windows (jeśli masz listę kategorii), a następnie wybierz szablon Formularz dziedziczony.

  3. Pozostaw domyślną nazwę, Form2 a następnie kliknij przycisk Dodaj.

  4. W oknie dialogowym Selektor dziedziczenia wybierz pozycję Form1 z projektu BaseFormLibrary jako formularz do dziedziczenia, a następnie kliknij przycisk OK.

    Spowoduje to utworzenie formularza w projekcie InheritanceTest , który pochodzi z formularza w formze BaseFormLibrary.

  5. Otwórz formularz dziedziczony (Form2) w projektancie, klikając go dwukrotnie, jeśli nie jest jeszcze otwarty.

    W projektancie dziedziczone przyciski mają symbol (Screenshot of the Visual Basic inheritance symbol.) w górnym rogu wskazujący, że są dziedziczone.

  6. Wybierz przycisk Say Hello i obserwuj uchwyty zmiany rozmiaru. Ponieważ ten przycisk jest chroniony, dziedziczy mogą go przenosić, zmieniać jego rozmiar, zmieniać podpis i wprowadzać inne modyfikacje.

  7. Wybierz prywatny przycisk Say Goodbye i zwróć uwagę, że nie ma uchwytów zmiany rozmiaru. Ponadto w oknie Właściwości właściwości właściwości są szare, aby wskazać, że nie można ich modyfikować.

  8. Jeśli używasz języka Visual C#:

    1. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy pozycję Form1 w projekcie InheritanceTest, a następnie wybierz polecenie Usuń. W wyświetlonym oknie komunikatu kliknij przycisk OK , aby potwierdzić usunięcie.

    2. Otwórz plik Program.cs i zmień wiersz Application.Run(new Form1()); na Application.Run(new Form2());.

  9. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt InheritanceTest i wybierz polecenie Ustaw jako projekt startowy.

  10. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt InheritanceTest i wybierz polecenie Właściwości.

  11. Na stronach właściwości InheritanceTest ustaw obiekt startowy na dziedziczony formularz (Form2).

  12. Naciśnij klawisz F5 , aby uruchomić aplikację i obserwuj zachowanie dziedziczonego formularza.

Następne kroki

Dziedziczenie kontrolek użytkownika działa w taki sam sposób. Otwórz nowy projekt biblioteki klas i dodaj kontrolkę użytkownika. Umieść na nim kontrolki składowe i skompiluj projekt. Otwórz kolejny nowy projekt biblioteki klas i dodaj odwołanie do skompilowanej biblioteki klas. Spróbuj również dodać odziedziczoną kontrolkę (za pomocą okna dialogowego Dodawanie nowych elementów) do projektu i używając selektora dziedziczenia. Dodaj kontrolkę użytkownika i zmień instrukcję Inherits (: w visual C#). Aby uzyskać więcej informacji, zobacz How to: Inherit Windows Forms (Jak dziedziczyć formularze systemu Windows).

Zobacz też