Baza danych w TreeView

Może niektórzy z was zastanawiali się kiedyś czy da się do TreeView podłączyć bazę danych. Otóż można ale nie jest to rzecz prosta i wielu pewnie podda się już na samym początku. Ja miałem plan stworzyć program na podobieństwo pewnego starego programu który taką funkcję udostępniał. Teraz podzielę się z wami jak dokonałem tego czynu. Zaczniemy od stworzenia bazy danych. Ja stworzyłem sobie bazę danych *.MDB w programie MDBPlus dostępnego w dziale „Przydatne programy do vb.net”. Dla leniwych bazę danych udostępniam tutaj: dzial_pracownik_dane jej budowa wygląda tak:

baza_danychWypełniłem ją podstawowymi informacjami więc będzie na czym pracować. Zaczynamy od utworzenia nowego projektu. Następnie przechodzimy do katalogu naszego projektu aby wrzucić naszą bazę danych. Katalog w którym należy umieścić plik bazy danych znajduje się  pod adresem: |folder naszego projektu| \bin\Debug

db_do_treeview3U mnie wyglądało to tak jak na obrazku, zwróćcie uwagę na adres folderu w którym umieściłem naszą bazę danych. Teraz wracamy do naszego projektu. Musimy dodać moduł i umieścić tam połączenie do naszej bazy danych abyśmy mogli w łatwy sposób się do niej odwołać. Dodajemy moduł, otwieramy projekt i wybieramy „Dodaj formularz systemu Windows…”

db_do_treeview4Następnie dodajemy Moduł:

db_do_treeview5Kiedy mamy dodany moduł otwieramy go z Eksploratora rozwiązań:

db_do_treeview6i wypełniamy kodem:

aby sprawdzić czy wszystko działa można w Formie wpisać:

I rozpocząć program, jeśli wszystko prawidłowo się załaduje pokaże się nam czysta forma, jeśli nie dostaniemy komunikat, że wystąpiły jakieś problemy. Na początku do naszej formy dodamy sobie z przybornika „TreeView”:

db_do_treeview7Postaramy się wypełnić go danymi z tabeli. W tym wypadku rozkładane będą dane „dział” i w tych działach znajdować się będzie „ImieNazwisko” po wybraniu odpowiedniego imienia po prawej stronie (chwilowo pustej) pokażą się dane pracownika. Aby to zrobić tworzymy sobie dwie listy i importujemy składnik:

Pierwsza lista będzie przechowywała działy druga będzie przechowywała działy i ImieNazwisko osób z działów. Należy teraz odwołać się do naszej bazy danych i wypełnić te listy. Nie wygląda to skomplikowanie:

Działa to naprawdę łatwo, najpierw otwierane jest połączenie następnie realizowane jest zapytanie (querry) a następnie podczas wykonywania operacji czytania danych nasze listy są wypełniane. Teraz należy do naszej list2 dodać imiona i nazwiska. Wygląda to tak:

Teraz wystarczy tylko dodać funkcję która załaduję nam naszą list2 do TreeView. Robimy to w następujący sposób:

Dobra jest cały Sub ukończony. Zobaczmy efekt :

db_do_treeview8

Mam nadzieję, że udało wam się tak jak mnie. Teraz przygotujemy sobie formę na informacje zawarte w trzeciej tabeli, czyli dane osobowe pracowników. Ja dodałem kilka Labeli i TextBoxów efekt:

db_do_treeview10

Teraz musimy dodać sobie wypełnić te textboxy więc tworzymy sobie event (zdarzenie) do naszego treeView. Znajdujemy NodeMouseClick i tworzymy uchwyt (klikamy dwukrotnie na puste pole obok).

db_do_treeview9

Wypełniamy go kodem:

Tutaj również przydała nam się lista1. Musimy wiedzieć, że po kliknięciu myszką przesyłane są również dane działu ponieważ zdarzenie to rozpoznaje każdy wybrany node nawet te główny, więc gdyby nie pętla if i sprawdzenie czy wybrany element znajduje się w list1 nasz program wywalił by błąd ponieważ będzie wywoływane zapytanie, na przyklad: Were (imieNazwisko) = 'biuro’,  dlatego musimy oddzielić te wybrane elementy. Mój program działa sprawnie:

db_do_treeview1

 

Jeśli coś jest niejasne albo macie pytania odnośnie podłączenia innych rodzajów baz danych do treeview albo bazy danych z serwera proszę o kontakt na pewno jakoś pomogę. Cały program można pobrać tutaj: db_do_treeView

Permalink do tego artykułu: https://visualmonsters.cba.pl/baza-danych-w-treeview/

Dodaj komentarz

Twój adres email nie będzie publikowany.