Udostępnij za pośrednictwem


Wskazówki: tworzenie formantu użytkownika formularzy systemu Windows obsługującego powiązanie danych wyszukiwania

Podczas wyświetlania danych na formularzach systemu Windows, można wybrać istniejących formantów z przybornika lub jeśli aplikacja wymaga funkcji niedostępnych w standardowe formanty, mogą tworzyć własne kontrolki.Niniejszy przewodnik pokazuje, jak utworzyć formant, który implementuje LookupBindingPropertiesAttribute.Określa, które implementują LookupBindingPropertiesAttribute może zawierać trzy właściwości, które mogą być związane z danymi.Takie formanty są podobne do ComboBox.

Aby uzyskać więcej informacji o kontroli, zobacz Opracowywanie formantów formularzy systemu Windows w czasie projektowania.

Podczas tworzenia formantów do użycia w scenariuszach wiązania danych należy zaimplementować jedną z następujących atrybutów wiązania danych:

Użycie atrybutu wiązania danych

Wdrożenie DefaultBindingPropertyAttribute na proste formanty, takie jak TextBox, który pojedynczej kolumny (lub wyświetlić właściwości) danych.Aby uzyskać więcej informacji, zobacz Wskazówki: tworzenie formantu użytkownika formularzy systemu Windows obsługującego proste powiązanie danych.

Wdrożenie ComplexBindingPropertiesAttribute na formanty, takie jak DataGridView, który wyświetlania list lub tabel danych.Aby uzyskać więcej informacji, zobacz Wskazówki: tworzenie formantu użytkownika formularzy systemu Windows obsługującego złożone powiązanie danych.

Wdrożenie LookupBindingPropertiesAttribute na formanty, takie jak ComboBox, wyświetlenie listy (lub tabele) danych, ale również wymagane do prezentowania kolumnę lub właściwości.(Ten proces jest opisany na tej stronie Przewodnik).

Niniejszy przewodnik tworzy kontroli wyszukiwania, która jest powiązana z danych z dwóch tabel.W tym przykładzie zastosowano Customers i Orders tabele w bazie danych Northwind.Formant wyszukiwania będą powiązane CustomerID pola Orders tabeli.Ta wartość będzie używany do odszukania CompanyName z Customers tabeli.

Podczas tej procedury pokażemy ci, jak:

  • Utwórz nowy aplikacji systemu Windows.

  • Dodaj nowy kontrolki użytkownika się z projektem.

  • Wizualne projektowanie kontrolki użytkownika.

  • Wdrożenie LookupBindingProperty atrybutu.

  • Tworzenie zestawu danych z Kreator konfiguracji źródła danych.

  • Ustaw IDklienta kolumny na zamówienia w tabeli źródła danych okno, aby użyć nowego formantu.

  • Tworzenie formularza do wyświetlenia w formancie nowych danych.

Wymagania wstępne

Aby można było ukończyć tej procedury, należy mieć:

Tworzenie aplikacji systemu Windows

Pierwszym krokiem jest utworzenie aplikacji systemu Windows.

Aby utworzyć nowy projekt systemu Windows

  1. W programie Visual Studio z pliku menu, Utwórz nową projektu.

  2. Nazwa projektu LookupControlWalkthrough.

  3. Wybierz aplikacji systemu Windows i kliknij przycisk OK.Aby uzyskać więcej informacji, zobacz Wdrażanie aplikacji klienta za pomocą programu .NET Framework.

    LookupControlWalkthrough projektu zostało utworzone i dodane do Eksploratora rozwiązań.

Dodawanie kontrolki użytkownika do projektu

Niniejszy przewodnik tworzy formant wyszukiwania z kontrolki użytkownika, więc dodać kontrolki użytkownika elementu do LookupControlWalkthrough projektu.

Aby dodać kontrolki użytkownika do projektu

  1. Z projektu menu, wybierz opcję dodać formant użytkownika.

  2. Typ LookupBox w Nazwa obszaru, a następnie kliknij przycisk Dodaj.

    LookupBox formant zostanie dodany do Eksploratora rozwiązań i otwiera w projektancie.

Projektowania formantu LookupBox

Aby projektować kontrolki LookupBox

  • Przeciągnij ComboBox z Przybornika na powierzchnię projektową kontrolki użytkownika.

Dodawanie wymaganego atrybutu powiązania danych

Dla wyszukiwania określa, że wiązanie danych pomocy technicznej, można zaimplementować LookupBindingPropertiesAttribute.

Do zaimplementowania atrybutu LookupBindingProperties

  1. Przełącznik LookupBox kontroli do widoku Kod.(Na widoku menu, wybierz polecenie Kod.)

  2. 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();
            }
        }
    }
    
  3. Z menu Kompiluj wybierz polecenie Kompiluj rozwiązanie.

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 tabele w bazie danych Northwind.Musisz mieć dostęp do przykładowej bazy danych Northwind do utworzenia połączenia.Aby uzyskać informacje o konfigurowaniu bazie danych Northwind, zobacz Porady: instalacja przykładowych baz danych.

Aby utworzyć źródło danych

  1. W menu Dane kliknij przycisk Pokaż źródła danych.

  2. W oknie Źródła danych wybierz Dodaj nowe źródło danych aby uruchomić Kreatora konfiguracji źródła danych.

  3. Wybierz Baza danych na stronie Wybierz typ źródła danych, a następnie kliknij Dalej.

  4. Na Wybierz połączenie danych do strony, jedną z następujących czynności:

    • Jeśli połączenie danych z bazie danych Northwind jest dostępna na liście rozwijanej, zaznacz go.

      —lub—

    • Wybierz nowe połączenie można uruchomić Dodaj/Modyfikuj połączenia okno dialogowe.

  5. Jeśli baza danych wymaga hasła, wybierz opcję dołączenia danych poufnych, a następnie kliknij przycisk Dalej.

  6. Na stronie Zapisz ciąg połączeń do pliku konfiguracyjnego aplikacji kliknij Dalej.

  7. Rozwiń węzeł Tabele na stronie Wybierz obiekty bazy danych.

  8. Wybierz Customers i Orders tabel, a następnie kliknij przycisk Zakończ.

    NorthwindDataSet jest dodawany do projektu i Customers i Orders tabele zostaną wyświetlone w źródła danych okna.

Ustawienie kolumnie IDKlienta w tabeli zamówienia, aby użyć formantu LookupBox

W ramach źródła danych okna można ustawić sterowania do utworzenia przed przeciągając elementy na formularzu.

Aby ustawić kolumny IDKlienta powiązać formant LookupBox

  1. Otwórz Form1 w projektancie.

  2. Rozwiń węzeł klienci w węźle źródła danych okna.

  3. Rozwiń węzeł zamówienia węzła (w klienci poniżej węzła faksu kolumny).

  4. Kliknij strzałkę listy rozwijanej zamówienia węzła i wybierz polecenie Szczegóły z listy kontroli.

  5. Kliknij strzałkę listy rozwijanej IDklienta kolumny (w zamówienia węzła) i wybierz polecenie Dostosuj.

  6. Wybierz LookupBox z listy skojarzonych formantów w Opcje dostosowania interfejsu użytkownika danych okno dialogowe.

  7. Kliknij przycisk OK.

  8. Kliknij strzałkę listy rozwijanej IDklienta kolumny i wybierz polecenie LookupBox.

Dodawanie formantów do formularza

Można utworzyć, przeciągając elementy z formantów powiązanych z danymi źródła danych okna na Form1.

Aby utworzyć formantów powiązanych z danymi na formularzu systemu Windows

  • Przeciągnij zamówienia węzła z źródła danych okna na formularzu systemu Windows i sprawdź, czy LookupBox kontroli jest używana do wyświetlania danych w CustomerID kolumny.

Formant z wyszukiwanie CompanyName z tabeli Klienci

Aby skonfigurować powiązań wyszukiwania

Uruchamianie aplikacji

Aby uruchomić aplikację

  • Naciśnij klawisz F5, aby uruchomić aplikację.

  • Poruszanie się po niektórych rekordów i sprawdź, czy CompanyName jest widoczny w LookupBox kontroli.

Zobacz też

Zadania

Porady: ustawianie formantu do utworzenia podczas przeciągania z okna źródła danych

Koncepcje

Powiązywanie formantów formularzy systemu Windows z danymi w Visual Studio

Przygotowywanie aplikacji na otrzymywanie danych

Pobieranie danych do aplikacji

Powiązywanie kontrolek z danymi w Visual Studio

Edytowanie danych w aplikacji

Sprawdzanie poprawności danych

Zapisywanie danych

Inne zasoby

Łączenie z danymi w Visual Studio