Instrukcje: dziedziczenie formularzy przy użyciu selektora dziedziczenia

Najprostszym sposobem dziedziczenia formularza lub innego obiektu jest użycie okna dialogowego Selektor dziedziczenia. Dzięki niej możesz korzystać z kodu lub interfejsów użytkownika, które zostały już utworzone w innych rozwiązaniach.

Uwaga

Aby dziedziczyć po formularzu za pomocą okna dialogowego Selektor dziedziczenia, projekt zawierający ten formularz musi zostać wbudowany w plik wykonywalny lub bibliotekę DLL. Aby skompilować projekt, wybierz pozycję Kompiluj rozwiązanie z menu Kompilacja .

Tworzenie formularza systemu Windows przy użyciu selektora dziedziczenia

  1. W programie Visual Studio z menu Projekt wybierz pozycję Dodaj formularz systemu Windows.

    Zostanie otwarte okno dialogowe Dodawanie nowego elementu .

  2. Przeszukaj szablon Odziedziczony formularz z pola wyszukiwania lub klikając kategorię Formularze systemu Windows, zaznacz go i nadaj mu nazwę w polu Nazwa . Kliknij przycisk Dodaj, aby kontynuować.

    Zostanie otwarte okno dialogowe Selektor dziedziczenia. Jeśli bieżący projekt zawiera już formularze, są one wyświetlane w oknie dialogowym Selektor dziedziczenia.

  3. Aby dziedziczyć formularz w innym zestawie, kliknij przycisk Przeglądaj .

  4. W obszarze Wybierz plik, który zawiera składnik do dziedziczenia z okna dialogowego, przejdź do projektu zawierającego pożądany formularz lub moduł.

  5. Kliknij nazwę pliku exe lub dll, aby go zaznaczyć, a następnie kliknij przycisk Otwórz .

    Spowoduje to powrót do okna dialogowego Selektor dziedziczenia, w którym znajduje się teraz składnik wraz z projektem, w którym się znajduje.

  6. Wybierz składnik.

    W Eksplorator rozwiązań składnik jest dodawany do projektu. Jeśli ma interfejs użytkownika, kontrolki, które są częścią dziedziczonego formularza, zostaną oznaczone glyph (Screenshot of the Visual Basic inheritance symbol.), a po wybraniu mają obramowanie wskazujące poziom zabezpieczeń, które kontrolka ma na formularzu superklasowym. Zachowania odpowiadające różnym poziomom zabezpieczeń są wymienione w poniższej tabeli.

    Poziom zabezpieczeń kontroli Dostępna interakcja za pośrednictwem Projektant i edytora kodu przy użyciu formularza dziedziczonego
    Publiczna Standardowe obramowanie z uchwytami określania rozmiaru: kontrolka może mieć rozmiar i przenieść. Dostęp do kontrolki można uzyskać wewnętrznie przez klasę, która deklaruje ją i zewnętrznie przez inne klasy.
    Chronione Standardowe obramowanie z uchwytami określania rozmiaru: kontrolka może mieć rozmiar i przenieść. Dostęp do niej można uzyskać wewnętrznie przez klasę, która ją deklaruje i dowolną klasę dziedziczą z klasy nadrzędnej, ale nie można uzyskać do niej dostępu przez klasy zewnętrzne.
    Chronione wewnętrzne (chronione znajome w Visual Basic) Standardowe obramowanie z uchwytami określania rozmiaru: kontrolka może mieć rozmiar i przenieść. Można uzyskać dostęp wewnętrznie przez klasę, która ją deklaruje, przez dowolną klasę, która dziedziczy z klasy nadrzędnej, oraz przez inne elementy członkowskie zestawu, który go zawiera.
    Wewnętrzny (przyjaciel w Visual Basic) Obramowanie standardowe bez uchwytów ustalania rozmiaru, wyświetlane w formularzu, właściwości widoczne w oknie Właściwości . Jednak wszystkie aspekty kontrolki będą traktowane jako tylko do odczytu. Nie można przenosić ani zmieniać rozmiaru kontrolki ani zmieniać jej właściwości. Jeśli kontrolka jest kontenerem innych kontrolek, takich jak pole grupy, nie można dodać nowych kontrolek i nie można usunąć istniejących kontrolek, nawet jeśli te kontrolki były publiczne. Dostęp do kontrolki można uzyskać tylko przez inne elementy członkowskie zestawu, który go zawiera.
    Prywatne Obramowanie standardowe bez uchwytów ustalania rozmiaru, wyświetlane w formularzu, właściwości widoczne w oknie Właściwości . Jednak wszystkie aspekty kontrolki będą traktowane jako tylko do odczytu. Nie można przenosić ani zmieniać rozmiaru kontrolki ani zmieniać jej właściwości. Jeśli kontrolka jest kontenerem innych kontrolek, takich jak pole grupy, nie można dodać nowych kontrolek i nie można usunąć istniejących kontrolek, nawet jeśli te kontrolki były publiczne. Dostęp do kontrolki można uzyskać tylko przez klasę, która ją deklaruje.

    Aby uzyskać informacje na temat zmieniania wyglądu formularza podstawowego, zobacz Efekty modyfikowania wyglądu formularza podstawowego.

    Uwaga

    Po połączeniu odziedziczonych kontrolek i składników ze standardowymi kontrolkami i składnikami w formularzach Windows Forms mogą wystąpić konflikty z porządkowania z. Można to poprawić, modyfikując kolejność z, która jest wykonywana, klikając w menu Format , wskazując pozycję Kolejność, a następnie klikając polecenie Bring To Front lub Send To Back. Aby uzyskać więcej informacji na temat kolejności z kontrolek, zobacz How to: Layer Objects on Windows Forms (Instrukcje: obiekty warstwowe w formularzach systemu Windows).

Zobacz też