Udostępnij za pośrednictwem


Jak: Utworzyć tabelę wyszukiwania za pomocą komponentu BindingSource Windows Forms

Tabela wyszukiwania to tabela danych zawierająca kolumnę, która wyświetla dane z rekordów w powiązanej tabeli. W poniższych procedurach kontrolka ComboBox służy do wyświetlania pola z relacją klucza obcego od tabeli nadrzędnej do tabeli podrzędnej.

Aby ułatwić wizualizację tych dwóch tabel i tej relacji, oto przykład tabeli nadrzędnej i podrzędnej:

CustomersTable (tabela nadrzędna)

Identyfikator klienta NazwaKlienta
712 Paul Koch
713 Tamara Johnston

OrdersTable (tabela podrzędna)

Identyfikator zamówienia Data Zamówienia Identyfikator klienta
903 12 lutego 2004 r. 712
904 13 lutego 2004 r. 713

W tym scenariuszu jedna tabela CustomersTable przechowuje rzeczywiste informacje, które chcesz wyświetlić i zapisać. Jednak aby zaoszczędzić miejsce, tabela pozostawia dane, które zapewniają jasność. Druga tabela OrdersTable zawiera tylko informacje dotyczące wyglądu dotyczące tego, który numer identyfikatora klienta jest odpowiednikiem daty zamówienia i identyfikatora zamówienia. Nie ma wzmianki o nazwach klientów.

Na kontrolce ComboBox ustawiane są cztery ważne właściwości, aby utworzyć tabelę odnośników.

  • Właściwość DataSource zawiera nazwę tabeli.

  • Właściwość DisplayMember zawiera kolumnę danych tej tabeli, która ma być wyświetlana dla tekstu kontrolki (nazwy klienta).

  • Właściwość ValueMember zawiera kolumnę danych tej tabeli z przechowywanymi informacjami (numerem identyfikatora w tabeli nadrzędnej).

  • Właściwość SelectedValue zapewnia wartość wyszukiwania dla tabeli podrzędnej w oparciu o ValueMember.

W poniższych procedurach pokazano, jak utworzyć formularz jako tabelę odnośników i powiązać dane z kontrolkami w nim. Aby pomyślnie wykonać procedury, musisz mieć źródło danych z tabelami nadrzędnymi i podrzędnymi, które mają relację klucza obcego, jak wspomniano wcześniej.

Aby utworzyć interfejs użytkownika

  1. Z ToolBoxprzeciągnij kontrolkę ComboBox na formularz.

    Ta kontrolka wyświetli kolumnę z tabeli nadrzędnej.

  2. Przeciągnij inne elementy sterujące, aby wyświetlić szczegóły z tabeli podrzędnej. Format danych w tabeli powinien określać wybrane kontrolki. Aby uzyskać więcej informacji, zobacz Kontrolki formularzy systemu Windows według funkcji.

  3. Przeciągnij kontrolkę BindingNavigator na formularz; umożliwi to nawigację po danych w tabeli podrzędnej.

Aby nawiązać połączenie z danymi i powiązać je z kontrolkami

  1. Wybierz ComboBox i kliknij znacznik Inteligentne zadanie, aby wyświetlić okno dialogowe Inteligentne zadanie.

  2. Wybierz pozycję Użyj elementów powiązanych z danymi.

  3. Kliknij strzałkę obok listy rozwijanej źródła danych. Jeśli źródło danych zostało wcześniej skonfigurowane dla projektu lub formularza, zostanie wyświetlone; W przeciwnym razie wykonaj następujące kroki (w tym przykładzie użyto tabel Customers and Orders przykładowej bazy danych Northwind i odwołuje się do nich w nawiasach).

    1. Kliknij Dodaj źródło danych projektu, aby nawiązać połączenie z danymi i utworzyć źródło danych.

    2. Na stronie powitalnej kreatora konfiguracji źródła danych kliknij przycisk Dalej.

    3. Wybierz pozycję Database na stronie Wybierz typ źródła danych.

    4. Wybierz połączenie danych z listy dostępnych połączeń na stronie Wybierz połączenie danych. Jeśli żądane połączenie danych jest niedostępne, wybierz pozycję Nowe połączenie, aby utworzyć nowe połączenie danych.

    5. Kliknij przycisk Tak, zapisz połączenia, aby zapisać parametry połączenia w pliku konfiguracji aplikacji.

    6. Wybierz obiekty bazy danych, aby przenieść je do aplikacji. W takim przypadku wybierz tabelę nadrzędną i tabelę podrzędną (na przykład Klienci i Zamówienia) z relacją klucza obcego.

    7. Zastąp domyślną nazwę zestawu danych, jeśli chcesz.

    8. Kliknij Zakończ.

  4. W wyświetl element członkowski listy rozwijanej wybierz nazwę kolumny (na przykład ContactName), która ma być wyświetlana w polu kombi.

  5. W polu listy rozwijanej elementu członkowskiego wartości wybierz kolumnę (na przykład CustomerID), aby wykonać operację wyszukiwania w tabeli podrzędnej.

  6. W polu listy rozwijanej wybranej wartości przejdź do źródła danych projektu i właśnie utworzony zestaw danych zawierający tabele nadrzędne i podrzędne. Wybierz tę samą właściwość tabeli podrzędnej, która jest członkiem wartości tabeli nadrzędnej (na przykład Orders.CustomerID). Odpowiednie BindingSource, zestaw danych i składniki adaptera tabeli zostaną utworzone i dodane do formularza.

  7. Powiąż kontrolkę BindingNavigator z komponentem BindingSource w tabeli podrzędnej (na przykład OrdersBindingSource).

  8. Powiąż kontrolki inne niż ComboBox i BindingNavigator z polami szczegółów tabeli podrzędnej BindingSource (na przykład OrdersBindingSource), które chcesz wyświetlić.

Zobacz też