Źródła danych obsługiwane przez formularze systemu Windows

Tradycyjnie powiązanie danych jest używane w aplikacjach do korzystania z danych przechowywanych w bazach danych. Dzięki powiązaniu danych formularzy systemu Windows można uzyskiwać dostęp do danych z baz danych, a także danych w innych strukturach, takich jak tablice i kolekcje, o ile zostały spełnione pewne minimalne wymagania.

Struktury powiązane z

W formularzach systemu Windows można powiązać z szeroką gamą struktur — od prostych obiektów (proste powiązanie) do złożonych list, takich jak tabele danych ADO.NET (złożone powiązanie). W przypadku prostego powiązania formularze systemu Windows obsługują powiązanie z właściwościami publicznymi w obiekcie prostym. Powiązanie oparte na liście formularzy systemu Windows zwykle wymaga, aby obiekt obsługiwał IList interfejs lub IListSource interfejs. Ponadto w przypadku powiązania za pośrednictwem BindingSource składnika można powiązać z obiektem obsługującym IEnumerable interfejs. Aby uzyskać więcej informacji na temat interfejsów związanych z powiązaniem danych, zobacz Interfejsy powiązane z powiązaniem danych.

Na poniższej liście przedstawiono struktury, z które można powiązać w formularzach systemu Windows.

BindingSource
A BindingSource jest najczęściej używanym źródłem danych formularzy systemu Windows i pełni rolę serwera proxy między źródłem danych a kontrolkami Windows Forms. Ogólny BindingSource wzorzec użycia polega na powiązaniu kontrolek z kontrolkami BindingSource i powiązaniu ze BindingSource źródłem danych (na przykład tabeli danych ADO.NET lub obiektu biznesowego). Zapewnia BindingSource usługi, które umożliwiają i zwiększają poziom obsługi powiązań danych. Na przykład kontrolki oparte na listach formularzy systemu Windows, takie jak DataGridView i ComboBox nie obsługują bezpośrednio powiązania IEnumerable ze źródłami danych, można jednak włączyć ten scenariusz przez powiązanie za pomocą elementu BindingSource. W takim przypadku BindingSource obiekt przekonwertuje źródło danych na IList.

Proste obiekty
Formularze systemu Windows obsługują właściwości kontrolki powiązania danych z właściwościami publicznymi w wystąpieniu obiektu przy użyciu Binding typu . Formularze systemu Windows obsługują również kontrolki oparte na listach powiązań, takie jak do ListControl wystąpienia obiektu, gdy BindingSource jest używany.

tablica lub kolekcja
Aby działać jako źródło danych, lista musi zaimplementować IList interfejs. Jednym z przykładów jest tablica, która jest wystąpieniem Array klasy. Aby uzyskać więcej informacji na temat tablic, zobacz How to: Create an Array of Objects (Visual Basic)( Jak utworzyć tablicę obiektów (Visual Basic).

Ogólnie rzecz biorąc, należy użyć BindingList<T> podczas tworzenia list obiektów dla powiązania danych. BindingList<T> jest ogólną wersją interfejsu IBindingList . Interfejs IBindingList rozszerza IList interfejs przez dodanie właściwości, metod i zdarzeń niezbędnych do powiązania danych dwukierunkowych.

IEnumerable
Kontrolki Formularzy systemu Windows mogą być powiązane ze źródłami danych, które obsługują IEnumerable interfejs tylko wtedy, gdy są powiązane za pośrednictwem BindingSource składnika.

ADO.NET obiektów danych
ADO.NET zapewnia wiele struktur danych odpowiednich do powiązania. Każda z nich różni się w swojej wyrafinowaniu i złożoności.

  • DataColumn. Element jest DataColumn podstawowym blokiem konstrukcyjnym DataTableobiektu , w tym, że wiele kolumn składa się z tabeli. Każda DataColumn z nich ma DataType właściwość, która określa rodzaj danych przechowywanych w kolumnie (na przykład tworzenie samochodów w tabeli opisującej samochody). Kontrolkę (na przykład TextBox właściwość kontrolki Text ) można powiązać z kolumną w tabeli danych.

  • DataTable. A DataTable to reprezentacja tabeli z wierszami i kolumnami w ADO.NET. Tabela danych zawiera dwie kolekcje: DataColumn, reprezentującą kolumny danych w danej tabeli (które ostatecznie określają rodzaje danych, które można wprowadzić w tej tabeli) i DataRow, reprezentując wiersze danych w danej tabeli. Kontrolkę zawartą w tabeli danych można powiązać ze złożonym powiązaniem z informacjami (takimi jak powiązanie kontrolki DataGridView z tabelą danych). Jednak w przypadku powiązania z elementem DataTable, jest to naprawdę powiązanie z domyślnym widokiem tabeli.

  • DataView. A DataView to dostosowany widok pojedynczej tabeli danych, która może być filtrowana lub sortowana. Widok danych to "migawka" danych używana przez złożone kontrolki powiązane. Możesz powiązać dane w widoku danych z prostym lub złożonym powiązaniem, ale należy pamiętać, że wiążesz się ze stałym "obrazem" danych, a nie czystym, aktualizując źródło danych.

  • DataSet. A DataSet to kolekcja tabel, relacji i ograniczeń danych w bazie danych. Możesz powiązać proste lub złożone powiązanie z danymi w zestawie danych, ale należy pamiętać, że powiązania są powiązane z wartością domyślną DataViewManager elementu DataSet (zobacz następny punktor).

  • DataViewManager. Element A DataViewManager to dostosowany widok całego DataSetobiektu , analogiczny do elementu DataView, ale z uwzględnionych relacji. W kolekcji DataViewSettings można ustawić domyślne filtry i opcje sortowania dla wszystkich widoków, które DataViewManager mają dla danej tabeli.

Zobacz też