Instruktaż: Tworzenie formantu użytkownika Windows Forms tego wiązania danych obsługuje wyszukiwania
Podczas wyświetlania danych na Windows Forms, można wybrać istniejące formanty z przybornika, lub jeśli aplikacja wymaga funkcji niedostępnych w standardowych formantów, mogą tworzyć niestandardowe formanty.W tym instruktażu pokazano, jak utworzyć formant, który implementuje LookupBindingPropertiesAttribute.Określa, że wdrożenie LookupBindingPropertiesAttribute może zawierać trzy właściwości, które mogą być powiązane z danymi.Takie kontrole są podobne do ComboBox.
Aby uzyskać więcej informacji dotyczących tworzenia kontroli, zobacz Programowanie formantów Windows Forms w czasie projektowania.
Podczas tworzenia formantów do użycia w scenariuszach databinding należy zaimplementować jeden z następujących atrybutów databinding:
Użycie atrybutu wiązania z danymi |
---|
Wdrożenie DefaultBindingPropertyAttribute na proste formanty, takie jak TextBox, że wyświetlanie pojedynczej kolumny (lub właściwość) danych.Aby uzyskać więcej informacji, zobacz Instruktaż: Tworzenie formantu użytkownika Windows Forms obsługuje dane proste powiązanie. |
Wdrożenie ComplexBindingPropertiesAttribute w zakresie kontroli, takich jak DataGridView, że wyświetlanie list (lub tabele) danych.Aby uzyskać więcej informacji, zobacz Instruktaż: Tworzenie formantu użytkownika Windows Forms tego powiązania obsługuje złożonych danych. |
Wdrożenie LookupBindingPropertiesAttribute na formanty, takie jak ComboBox, wyświetlanie list (lub tabele) danych, ale również musi przedstawiać pojedyncza kolumna lub właściwości.(Ten proces jest opisany na tej stronie instruktażu). |
W tym instruktażu tworzy kontroli wyszukiwania, która wiąże się z danymi z dwóch tabel.W tym przykładzie użyto Customers i Orders tabele z bazy danych Northwind.Formant wyszukiwania będzie związany CustomerID pola z Orders tabeli.Użyje tej wartości do wyszukiwania CompanyName z Customers tabeli.
Podczas tego instruktażu dowiesz się, jak:
Utwórz nowy Aplikacji Windows.
Dodaj nowy Kontrola użytkownika do swojego projektu.
Wizualne projektowanie kontroli użytkownika.
Wdrożenie LookupBindingProperty atrybut.
Tworzenie zestawu danych z Kreator konfiguracji źródła danych.
Ustaw IDklienta kolumny na zamówienia tabeli w Źródła danych okno, aby użyć nowego formantu.
Utworzyć formularz, aby wyświetlić dane w nowym formantem.
Wymagania wstępne
W celu przeprowadzenia tego instruktażu będą potrzebne:
- Dostęp do bazy danych Northwind.Aby uzyskać więcej informacji, zobacz Jak: Instalowanie przykładowe bazy danych.
Tworzenie aplikacji systemu Windows
Pierwszym krokiem jest utworzenie Aplikacji Windows.
Aby utworzyć nowy projekt systemu Windows
W programie Visual Studio z pliku menu, Utwórz nowy Projekt.
Nazwa projektu LookupControlWalkthrough.
Wybierz Aplikacji Windows i kliknij przycisk OK.Aby uzyskać więcej informacji, zobacz Tworzenie aplikacji klienta.
LookupControlWalkthrough projektu jest tworzony i dodawany do Solution Explorer.
Dodawanie formantu użytkownika do projektu
W tym instruktażu tworzy kontroli wyszukiwania z Kontrola użytkownika, dodać tak Kontrola użytkownika element do LookupControlWalkthrough projektu.
Aby dodać formant użytkownika do projektu
Z Projekt menu, wybierz opcję Dodaj formant użytkownika.
Typ LookupBox w Nazwa obszar, a następnie kliknij przycisk Dodaj.
LookupBox kontroli jest dodawana do Solution Explorer i otwiera w projektancie.
Projektowania formantu LookupBox
Aby zaprojektować formant LookupBox
- Przeciągnij ComboBox z Przybornik na powierzchnię projektu kontroli użytkownika.
Dodawanie wymaganego atrybutu wiązania z danymi
Dla wyszukiwania formantów tego wsparcia wiązania z danymi, można zaimplementować LookupBindingPropertiesAttribute.
Aby zaimplementować atrybutu LookupBindingProperties
Przełącznik LookupBox kontroli do widoku Kod.(Na widoku menu, wybierz polecenie kodu.)
Zastąp kod w LookupBox z następujących czynności:
<System.ComponentModel.LookupBindingProperties("DataSource", "DisplayMember", "ValueMember", "LookupMember")> Public Class LookupBox Public Property DataSource() As Object Get Return ComboBox1.DataSource End Get Set(ByVal value As Object) ComboBox1.DataSource = value End Set End Property Public Property DisplayMember() As String Get Return ComboBox1.DisplayMember End Get Set(ByVal value As String) ComboBox1.DisplayMember = value End Set End Property Public Property ValueMember() As String Get Return ComboBox1.ValueMember End Get Set(ByVal value As String) ComboBox1.ValueMember = value End Set End Property Public Property LookupMember() As String Get Return ComboBox1.SelectedValue.ToString() End Get Set(ByVal value As String) ComboBox1.SelectedValue = value End Set End Property End Class
using System.Windows.Forms; namespace CS { [System.ComponentModel.LookupBindingProperties("DataSource", "DisplayMember", "ValueMember", "LookupMember")] public partial class LookupBox : UserControl { public object DataSource { get{ return comboBox1.DataSource; } set{ comboBox1.DataSource = value; } } public string DisplayMember { get{ return comboBox1.DisplayMember; } set{ comboBox1.DisplayMember = value; } } public string ValueMember { get{ return comboBox1.ValueMember; } set{ comboBox1.ValueMember = value; } } public string LookupMember { get{ return comboBox1.SelectedValue.ToString(); } set{ comboBox1.SelectedValue = value; } } public LookupBox() { InitializeComponent(); } } }
Z budować menu, wybierz Roztwór budować.
Tworzenie źródła danych z bazy danych
Spowoduje to utworzenie źródła danych za pomocą Kreatora konfiguracji źródła danych na podstawie Customers i Orders tabel w bazie danych Northwind.Musi mieć dostęp do przykładowej bazy danych Northwind do utworzenia połączenia.Aby uzyskać informacje na temat konfigurowania przykładowej bazy danych Northwind, zobacz Jak: Instalowanie przykładowe bazy danych.
Aby utworzyć źródło danych
Na danych menu, kliknij przycisk Pokaż źródeł danych.
W Źródła danych okno select Dodać nowe źródło danych uruchomić Kreatora konfiguracji źródła danych.
Wybierz bazy danych na Wybierz typ źródła danych stronę, a następnie kliknij przycisk Dalej.
Na Wybierz połączenie danych do strony, jedną z następujących czynności:
Jeśli połączenie danych z przykładowej bazy danych Northwind jest dostępna na liście rozwijanej, należy go zaznaczyć.
- lub -
Wybierz Nowe połączenie uruchomić Dodawanie i modyfikowanie połączenia okno dialogowe.Aby uzyskać więcej informacji, zobacz Dodawanie/modyfikowanie połączeń, okno dialogowe (Ogólne).
Jeśli baza danych wymaga podania hasła, zaznacz opcję zawierają dane poufne, a następnie kliknij przycisk Dalej.
Kliknij przycisk Dalej na zapisać ciąg połączenia w pliku konfiguracyjnym aplikacji strony.
Rozwiń węzeł tabel węzeł na Wybierz obiekty bazy danych strony.
Wybierz Customers i Orders tabel, a następnie kliknij przycisk Zakończenie.
NorthwindDataSet jest dodawany do projektu i Customers i Orders tabele zostaną wyświetlone w Źródła danych okna.
Ustawienie w kolumnie IDKlienta w tabeli zamówienia, aby użyć formantu LookupBox
W ramach Źródła danych okna, można ustawić kontrolę ma zostać utworzony przed na przeciąganie elementów na formularzu.
Aby ustawić w kolumnie IDKlienta, aby powiązać z formantem LookupBox
Otwórz formularz Form1 w projektancie.
Rozwiń węzeł Klienci węzeł w Źródła danych okna.
Rozwiń zamówienia węzła (w Klienci węzeł poniżej Faks kolumny).
Kliknij strzałkę rozwijania w zamówienia węzeł i wybierz polecenie Szczegóły z listy kontroli.
Kliknij strzałkę rozwijania w IDklienta kolumny (w zamówienia węzła) i wybierz polecenie Dostosuj.
Wybierz LookupBox z listy Związane formanty w Opcje dostosowywania interfejsu użytkownika dane okno dialogowe.
Click OK.
Kliknij strzałkę rozwijania w IDklienta kolumny i wybierz polecenie LookupBox.
Dodawanie formantów do formularza
Formanty powiązane z danymi można utworzyć, przeciągając elementy z Źródła danych okna na formularz Form1.
Aby tworzyć formanty powiązane z danymi w formularzu Windows
- Przeciągnij zamówienia węzła z Źródła danych okna na Windows Form i sprawdź, czy LookupBox formantu jest używany do wyświetlania danych w CustomerID kolumny.
Wiązanie formantu z tabeli Klienci odszukaj NazwaFirmy
Aby skonfigurować wiązania wyszukiwania
Wybierz główne Klienci węzeł w Źródła danych okna i przeciągnij go na kombi pole w CustomerIDLookupBox na formularz Form1.
To konfiguruje powiązanie danych, aby wyświetlić CompanyName z Customers tabeli przy zachowaniu CustomerID wartości z Orders tabeli.Aby uzyskać więcej informacji, zobacz Jak: Tworzenie tabel odnośników w aplikacji Windows Forms.
Z uruchomioną aplikacją
Aby uruchomić aplikację
Naciśnij klawisz F5, aby uruchomić aplikację.
Poruszać się niektóre rekordy i sprawdź, czy CompanyName pojawia się w LookupBox kontroli.
Zobacz też
Zadania
Jak: formant ma zostać utworzony podczas przeciągania w oknie źródła danych
Koncepcje
Co nowego w projektowaniu danych aplikacji w Visual Studio 2012
Wiązanie formantów Windows Forms do danych w programie Visual Studio
Przygotowanie aplikacji do odbierania danych
Pobieranie danych do aplikacji
Wiązanie formantów z danych w programie Visual Studio
Sprawdzanie poprawności danych