Wskazówki: wyświetlanie powiązanych danych na formularzu systemu Windows
Opublikowano: sierpień 2016
W wielu scenariuszach aplikacji chcesz pracować z danych pochodzących z więcej niż jednej tabeli i często, dane z tabel pokrewnych. Oznacza to, że użytkownik chce pracować z relacji nadrzędny podrzędny. Na przykład można utworzyć formularz, gdzie wybranie rekordu klienta powoduje wyświetlenie zamówień tego klienta. Displaying the related records on the form is achieved by setting the DataSource property of the child BindingSource to the parent BindingSource (not the child table), and setting the DataMember property of the child BindingSource to the data relation that ties the parent and child tables together.
Zadania zilustrowane w tym przewodniku obejmują:
Tworzenie aplikacji systemu Windows projektu.
Tworzenie i konfigurowanie zestawu danych w aplikacji oparte na Customers i Orders tabel w bazie danych Northwind za pomocą Kreator konfiguracji źródła danych.
Dodawanie formantów do wyświetlania danych z Customers tabeli.
Dodawanie formantów do wyświetlania Orders korzystając z wybranej Customer.
Testowanie aplikacji zaznaczając różnych nabywców i weryfikowanie, że prawidłowego zamówienia są wyświetlane dla wybranego odbiorcy.
Wymagania wstępne
W celu wykonania instrukcji tego przewodnika są potrzebne:
- Dostęp do przykładowej bazy danych Northwind. Do konfiguracji przykładowych baz danych, zobacz Porady: instalacja przykładowych baz danych.
Tworzenie projektu
Pierwszym krokiem jest utworzenie aplikacji systemu Windows.
Aby utworzyć projekt aplikacji systemu Windows
Z menu Plik utwórz nowy projekt.
Nazwa projektu RelatedDataWalkthrough.
Wybierz aplikacji systemu Windows i kliknij przycisk OK. Aby uzyskać więcej informacji, zobacz Wdrażanie aplikacji klienta za pomocą programu .NET Framework.
RelatedDataWalkthrough projektu jest tworzony i dodawany do Solution Explorer.
Tworzenie źródła danych
Spowoduje to utworzenie zestawu danych na podstawie Customers i Orders tabel w bazie danych Northwind.
Aby utworzyć źródło danych
W menu Dane kliknij przycisk Pokaż źródła danych.
W oknie Źródła danych wybierz Dodaj nowe źródło danych aby uruchomić Kreatora konfiguracji źródła danych.
Wybierz Baza danych na stronie Wybierz typ źródła danych, a następnie kliknij Dalej.
Na stronie Wybierz połączenie danych wykonaj jedną z następujących czynności:
Jeśli połączenie danych z przykładową bazą danych Northwind jest dostępne na liście rozwijanej, wybierz je.
—lub—
Wybierz pozycję Nowe połączenie, aby otworzyć okno dialogowe Dodawanie/modyfikowanie połączenia.
Jeśli baza danych wymaga hasła, wybierz opcję dołączenia danych poufnych, a następnie kliknij przycisk Dalej.
Na stronie Zapisz ciąg połączeń do pliku konfiguracyjnego aplikacji kliknij Dalej.
Rozwiń węzeł Tabele na stronie Wybierz obiekty bazy danych.
Wybierz tabele Customers i Orders, a następnie kliknij Zakończ.
NorthwindDataSet został dodany do Twojego projektu, a tabela Klienci pojawia się w oknie Źródła danych.
Tworzenie formantów do wyświetlania danych z tabeli Customers
Aby utworzyć formanty do wyświetlania danych klientów (rekordów nadrzędnych)
W oknie Źródła danych zaznacz tabelę Customers, a następnie kliknij strzałkę listy rozwijanej.
Wybierz szczegóły z menu.
Przeciągnij głównym klienci węzła z źródła danych okna na górze formularza Form1.
Formanty powiązane z danymi z opisowe etykiety są wyświetlane w formularzu, wraz z paska narzędzi (BindingNavigator) do nawigowania między rekordami. A NorthwindDataSet, CustomersTableAdapter, BindingSource, and BindingNavigator appear in the component tray.
Tworzenie formantów do wyświetlania danych z tabeli Orders
Aby utworzyć formant do wyświetlania zamówień dla każdego klienta (rekordy podrzędne)
In the Data Sources window, expand the Customers node and select the last column in the Customers table, which is an expandable Orders node, and drag it onto the bottom of Form1.
A DataGridView is added to the form, and a new BindingSource (OrdersBindingSource) and TableAdapter (OrdersTableAdapter) are added to the component tray.
Uwaga
Otwórz Okno właściwości i wybierz polecenie OrdersBindingSource.Inspekcja DataSource i DataMember właściwości, aby zobaczyć, jak wiązanie jest skonfigurowane do wyświetlania powiązanych rekordów.The DataSource is set to the CustomersBindingSource (the parent table's BindingSource), rather than the Orders table.DataMember Właściwość jest ustawiona na FK_Orders_Customers, który nazywa się DataRelation obiekt, który wiąże ze sobą tabel.
Testowanie aplikacji
Aby przetestować aplikację
Naciśnij klawisz F5, aby uruchomić aplikację.
Wybierz inny klientów korzystających z CustomersBindingNavigator do sprawdzenia prawidłowego zamówienia są wyświetlane w DataGridView.
Następne kroki
W zależności od wymagań aplikacji istnieje kilka kroków, które można wykonać po utworzeniu głównego/szczegółowego formularza. Jeden ulepszenie może zrobić do tego instruktażu jest:
- Filtrowanie Customers rekordów przez dodanie parametryzacja do Customers tabeli. Aby to zrobić, zaznacz dowolny formant, który wyświetla dane z Customers tabeli, kliknij tag inteligentny i wybierz polecenie Dodaj zapytanie. Zakończyć Konstruktor kryteriów wyszukiwania — Okno dialogowe. Aby uzyskać więcej informacji, zobacz Porady: dodawanie zapytania parametrycznego do aplikacji formularzy systemu Windows.
Zobacz też
Wskazówki dotyczące danych
Okno źródła danych
Powiązanie formantów formularzy systemu Windows z danymi w programie Visual Studio
Dodawanie nowych źródeł danych
TableAdapter — Przegląd
Porady: wyświetlanie powiązanych danych w aplikacji Windows Forms
BindingSource — Informacje o składniku
BindingNavigator — Informacje o formancie