Wskazówki: złożone powiązanie danych w aplikacjach na poziomie dokumentów
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.
Zastosowanie: Informacje przedstawione w tym temacie mają zastosowanie do projektów na poziomie aplikacji obsługiwanych w programach Excel 2013 i Excel 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacjach 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 komputerze w poniższych instrukcjach mogą być wyświetlane inne nazwy i lokalizacje niektórych elementów interfejsu użytkownika programu Visual Studio. Te elementy są określane przez numer wersji Visual Studio oraz twoje ustawienia. Aby uzyskać więcej informacji, zobacz Dostosowywanie ustawień środowiska deweloperskiego w Visual Studio.
Wymagania wstępne
Następujące składniki są wymagane do przeprowadzenia tego instruktażu:
Edycja programu Visual Studio 2013, która oferuje narzędzia deweloperskie pakietu Microsoft Office. Aby uzyskać więcej informacji, zobacz Konfigurowanie komputera do opracowywania rozwiązań pakietu Office.
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 Porady: tworzenie projektów Office w 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 Porady: łączenie 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 TableAdapter — Przegląd.
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ązaniach 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 dokumentów programu Word i skoroszytów w programie Excel w czasie wykonywania w dodatkach na poziomie aplikacji.
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
Porady: zapełnianie arkuszy danymi z bazy danych
Porady: zapełnianie dokumentów danymi z bazy danych
Porady: zapełnianie dokumentów danymi z usług
Porady: zapełnianie dokumentów danymi z obiektów
Porady: przewijanie rekordów bazy danych w arkuszu
Porady: aktualizowanie źródła danych danymi z formanty hosta
Wskazówki: proste powiązanie danych w projektach na poziomie dokumentów
Wskazówki: złożone powiązanie danych w projektach na poziomie dokumentów
Informacje
BindingSource — Informacje o składniku
Koncepcje
Korzystanie z plików lokalnej bazy danych w rozwiązaniach pakietu Office ― Omówienie
Powiązywanie formantów formularzy systemu Windows z danymi w Visual Studio
Korzystanie z plików lokalnej bazy danych w rozwiązaniach pakietu Office ― Omówienie
Łączenie z danymi w aplikacjach formularzy systemu Windows