Instruktaż: Złożone powiązania danych w projekcie na poziomie aplikacji
Dane można powiązać z formantami hosta i formantów Windows Forms na poziomie aplikacji.W tym instruktażu przedstawiono sposób dodawania formantów do arkusza programu Microsoft Office Excel i wiązać formanty z danych w czasie wykonywania.
Dotyczy: Informacje przedstawione w tym temacie dotyczą projektów na poziomie aplikacji dla programów Excel 2013 i Excel 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacji pakietu Office i typ projektu.
W przewodniku przedstawiono następujące zagadnienia:
Dodawanie ListObject formant do arkusza w czasie wykonywania.
Tworzenie BindingSource znaczenie kontroli dla instancji obiektu dataset.
[!UWAGA]
Na danym komputerze mogą być używane inne nazwy lub lokalizacje pewnych elementów interfejsu użytkownika programu Visual Studio, które są używane w poniższych instrukcjach. Używana wersja programu Visual Studio oraz jej ustawienia określają te elementy. Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.
Wymagania wstępne
Następujące składniki są wymagane do przeprowadzenia tego instruktażu:
-
Wersja Visual Studio 2012 zawierająca narzędzia dla deweloperów pakietu Microsoft Office. Aby uzyskać więcej informacji, zobacz [Konfigurowanie komputera do opracowywania rozwiązań pakietu Office](bb398242\(v=vs.110\).md).
Excel 2013 lub Excel 2010.
Dostęp do uruchomione wystąpienie programu SQL Server 2005 lub SQL Server 2005 Express, który ma AdventureWorksLT przykładowej bazy danych dołączone do niego.Można pobrać AdventureWorksLT bazy danych z witryny sieci Web w witrynie CodePlex.Aby uzyskać więcej informacji na temat dołączania bazy danych zobacz następujące tematy:
Aby dołączyć bazę danych przy użyciu programu SQL Server Management Studio lub SQL Server Management Studio Express, zobacz jak: dołączania bazy danych (program SQL Server Management Studio).
Aby dołączyć bazę danych przy użyciu wiersza polecenia, zobacz jak: Dołącz plik bazy danych do programu SQL Server Express.
Tworzenie nowego projektu
Pierwszym krokiem jest utworzenie projektu dodatek w programie Excel.
Aby utworzyć nowy projekt
Utwórz projekt dodatek programu Excel z nazwy podczas wypełniania arkuszy z bazy danych przy użyciu języka Visual Basic lub C#.
Aby uzyskać więcej informacji, zobacz Jak: tworzenie projektów pakietu Office w programie Visual Studio.
Zostanie otwarty program Visual Studio ThisAddIn.vb lub ThisAddIn.cs plik i dodaje podczas wypełniania arkuszy z projektu bazy danych do Solution Explorer.
Tworzenie źródła danych
Użycie Źródła danych okno umożliwiające dodanie zestawu danych wpisywanych do projektu.
Aby dodać zestawu danych wpisywanych do projektu
Jeśli Źródła danych okno nie jest widoczne, wyświetl go, w menu bar, wybierając View, Other Windows, Źródła danych.
Wybierz polecenie Dodać nowe źródło danych zacząć Kreatora konfiguracji źródła danych.
Kliknij przycisk bazy danych, a następnie kliknij przycisk Dalej.
Jeśli masz istniejące połączenie do AdventureWorksLT bazy danych, wybierz to połączenie i kliknij przycisk Dalej.
W przeciwnym razie kliknij przycisk Nowego połączeniai używać Dodawanie połączenia okno dialogowe, aby utworzyć nowe połączenie.Aby uzyskać więcej informacji, zobacz Jak: połączenia z danymi w bazie danych.
W Zapisać pliku konfiguracyjnego aplikacji ciągu połączenia strona, kliknij przycisk Dalej.
W Wybierz obiekty bazy danych użytkownika strony, rozwiń węzeł tabele i wybierz adres (SalesLT).
Kliknij Zakończ.
Plik AdventureWorksLTDataSet.xsd jest dodawany do Solution Explorer.Ten plik definiuje następujące elementy:
Wpisane zestawu danych o nazwie AdventureWorksLTDataSet.Tego zestawu danych reprezentuje zawartość adres (SalesLT) AdventureWorksLT bazy danych.
A TableAdapter named AddressTableAdapter.To TableAdapter służy do odczytu i zapisu danych AdventureWorksLTDataSet.Aby uzyskać więcej informacji, zobacz Przegląd TableAdapter.
Oba te obiekty użyje dalej w tym instruktażu.
Tworzenia formantów i powiązaniem formantów z danych
Do wykonania tej procedury ListObject sterowania Wyświetla wszystkie dane w tabeli zaznaczonej tak szybko, jak użytkownik otworzy skoroszyt.Używa obiektu list BindingSource do połączenia z bazą danych formantu.
Aby uzyskać więcej informacji o formantach wiązania z danymi, zobacz Wiązanie danych do formantów w rozwiązania dla pakietu Office.
Aby dodać obiekt listy zestawu danych oraz karty tabeli
W ThisAddIn klasę, zadeklarować następujące formanty do wyświetlania Address spis AdventureWorksLTDataSet zestawu danych.
Private addressListObject As Microsoft.Office.Tools.Excel.ListObject Private adventureWorksDataSet As AdventureWorksLTDataSet Private addressTableAdapter As AdventureWorksLTDataSetTableAdapters.AddressTableAdapter Private addressBindingSource As System.Windows.Forms.BindingSource
private Microsoft.Office.Tools.Excel.ListObject addressListObject; private AdventureWorksLTDataSet adventureWorksDataSet; private AdventureWorksLTDataSetTableAdapters.AddressTableAdapter addressTableAdapter; private System.Windows.Forms.BindingSource addressBindingSource;
W ThisAddIn_Startup metody, Dodaj następujący kod do inicjowania zestawu danych i wypełnić zestaw danych z informacjami z AdventureWorksLTDataSet zestawu danych.
Me.addressTableAdapter = New AdventureWorksLTDataSetTableAdapters.AddressTableAdapter() Me.adventureWorksDataSet = New AdventureWorksLTDataSet() Me.addressTableAdapter.Fill(Me.adventureWorksDataSet.Address) Me.addressBindingSource = New System.Windows.Forms.BindingSource()
this.addressTableAdapter = new AdventureWorksLTDataSetTableAdapters.AddressTableAdapter(); this.adventureWorksDataSet = new AdventureWorksLTDataSet(); this.addressTableAdapter.Fill(this.adventureWorksDataSet.Address); this.addressBindingSource = new System.Windows.Forms.BindingSource();
Dodaj następujący kod do ThisAddIn_Startup metoda.Spowoduje to wygenerowanie element hosta, która rozszerza arkusza.Aby uzyskać więcej informacji, zobacz Rozszerzanie dokumenty programu Word oraz skoroszyty programu Excel w dodatki poziomie aplikacji w czasie wykonywania.
Dim worksheet As Excel.Worksheet = DirectCast(Me.Application.ActiveWorkbook.Worksheets(1), Excel.Worksheet) ' Create a workhseet host item. Dim extendedWorksheet As Worksheet = Globals.Factory.GetVstoObject(worksheet)
Excel.Worksheet worksheet = (Excel.Worksheet)this.Application.ActiveWorkbook.Worksheets[1]; // Create a workhseet host item. Worksheet extendedWorksheet = Globals.Factory.GetVstoObject(worksheet);
Utwórz zakres i dodać ListObject kontroli.
Dim cell As Excel.Range = extendedWorksheet.Range("$A$1:$G$5", System.Type.Missing) Me.addressListObject = extendedWorksheet.Controls.AddListObject(cell, "list1")
Excel.Range cell = extendedWorksheet.Range["$A$1:$G$5"]; this.addressListObject = extendedWorksheet.Controls.AddListObject(cell, "list1");
Powiązać obiekt listy do AdventureWorksLTDataSet za pomocą BindingSource.Należy przekazać w nazwy kolumn, które chcesz powiązać obiekt listy.
Me.addressBindingSource.DataSource = Me.adventureWorksDataSet.Address Me.addressListObject.AutoSetDataBoundColumnHeaders = True Me.addressListObject.SetDataBinding( _ Me.addressBindingSource, "", "AddressID", "AddressLine1", _ "AddressLine2", "City", "StateProvince", "CountryRegion", "PostalCode")
this.addressBindingSource.DataSource = this.adventureWorksDataSet.Address; this.addressListObject.AutoSetDataBoundColumnHeaders = true; this.addressListObject.SetDataBinding( this.addressBindingSource, "", "AddressID", "AddressLine1", "AddressLine2", "City", "StateProvince", "CountryRegion", "PostalCode");
Testowanie dodatek programu
Po uruchomieniu programu Excel, ListObject sterowania wyświetla dane z Address spis AdventureWorksLTDataSet zestawu danych.
Aby przetestować dodatek
Press F5.
A ListObject kontrolki o nazwie addressListObject jest tworzony w arkuszu.W tym samym czasie, obiekt dataset, o nazwie adventureWorksLTDataSet i BindingSource o nazwie addressBindingSource są dodawane do projektu.ListObject Jest powiązany z BindingSource, które z kolei wiąże się obiektu dataset.
Zobacz też
Zadania
Jak: wypełnianie arkuszach z danymi z bazy danych
Jak: wypełnianie dokumentów z danymi z bazy danych
Jak: wypełnianie dokumentów z danymi z usług
Jak: wypełnianie dokumentów z danymi z obiektów
Jak: przewijać rekordów bazy danych w arkuszu
Jak: aktualizacji źródła danych z danymi z kontroli hosta
Instruktaż: Proste powiązanie danych w projekcie poziomie dokumentu
Instruktaż: Złożone powiązania danych w projekcie poziomie dokumentu
Informacje
Składnik BindingSource, omówienie
Koncepcje
Korzystanie z lokalnych plików bazy danych w Przegląd rozwiązań pakietu Office
Wiązanie formantów Windows Forms do danych w programie Visual Studio
Korzystanie z lokalnych plików bazy danych w Przegląd rozwiązań pakietu Office
Połączenie z danymi w aplikacji Windows Forms
Inne zasoby
Dane w rozwiązania dla pakietu Office
Wiązanie danych do formantów w rozwiązania dla pakietu Office