Udostępnij za pośrednictwem


Instruktaż: Proste powiązanie 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 dokumentu programu Microsoft Office Word i wiązać formanty z danych w czasie wykonywania.

Dotyczy: Informacje przedstawione w tym temacie dotyczą projektów na poziomie aplikacji dla programów Word 2013 i Word 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 ContentControl do dokumentu w czasie wykonywania.

  • Tworzenie BindingSource znaczenie kontroli dla instancji obiektu dataset.

  • Włączanie użytkownika do przeglądania rekordów i wyświetlania ich w formancie.

[!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).

Tworzenie nowego projektu

Pierwszym krokiem jest utworzenie projektu dodatek programu Word.

Aby utworzyć nowy projekt

  1. Umożliwia utworzenie projektu dodatek programu Word z nazwy podczas wypełniania dokumentów 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.

    Visual Studio otwiera plik ThisAddIn.vb lub ThisAddIn.cs i dodaje podczas wypełniania dokumentów z projektu bazy danych do Solution Explorer.

  2. Jeśli elementy docelowe projektu .NET Framework 4 lub .NET Framework 4.5, Dodaj odwołanie do zestawu Microsoft.Office.Tools.Word.v4.0.Utilities.dll.To odwołanie jest wymagane Aby programowo dodać formanty Windows Forms do dokumentu w dalszej części tego instruktażu.

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

  1. 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.

  2. Wybierz polecenie Dodać nowe źródło danych zacząć Kreatora konfiguracji źródła danych.

  3. Kliknij przycisk bazy danych, a następnie kliknij przycisk Dalej.

  4. 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.

  5. W Zapisać pliku konfiguracyjnego aplikacji ciągu połączenia strona, kliknij przycisk Dalej.

  6. W Wybierz obiekty bazy danych użytkownika strony, rozwiń węzeł tabele i wybierz klienta (SalesLT).

  7. 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ść klienta (SalesLT) AdventureWorksLT bazy danych.

    • A TableAdapter named CustomerTableAdapter.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

Interfejs do wyświetlania rekordów bazy danych w tym instruktażu jest bardzo prosty i został utworzony bezpośrednio wewnątrz dokumentu.Jeden ContentControl wyświetla rekord w jednej bazie danych w czasie i dwóch Button formanty pozwalają i z powrotem przeglądania rekordów.Używa formantu zawartości BindingSource do połączenia z bazą danych.

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 utworzyć interfejs w dokumencie

  1. W ThisAddIn klasę, zadeklarować następujące formanty do wyświetlania i przewijać Customer spis AdventureWorksLTDataSet bazy danych.

    Private adventureWorksDataSet As AdventureWorksLTDataSet
    Private customerTableAdapter As AdventureWorksLTDataSetTableAdapters.CustomerTableAdapter
    Private customerBindingSource As System.Windows.Forms.BindingSource
    Private customerContentControl As Microsoft.Office.Tools.Word.RichTextContentControl
    Private WithEvents button1 As Microsoft.Office.Tools.Word.Controls.Button
    Private WithEvents button2 As Microsoft.Office.Tools.Word.Controls.Button
    
    private AdventureWorksLTDataSet adventureWorksDataSet;
    private AdventureWorksLTDataSetTableAdapters.CustomerTableAdapter customerTableAdapter;
    private System.Windows.Forms.BindingSource customerBindingSource;
    private Microsoft.Office.Tools.Word.RichTextContentControl customerContentControl;
    private Microsoft.Office.Tools.Word.Controls.Button button1;
    private Microsoft.Office.Tools.Word.Controls.Button button2;
    
  2. W ThisAddIn_Startup metody, Dodaj następujący kod do inicjowania zestawu danych, wypełnić zestaw danych z informacjami z AdventureWorksLTDataSet bazy danych.

    Me.adventureWorksDataSet = New AdventureWorksLTDataSet()
    Me.customerTableAdapter = New AdventureWorksLTDataSetTableAdapters.CustomerTableAdapter()
    Me.customerTableAdapter.Fill(Me.adventureWorksDataSet.Customer)
    Me.customerBindingSource = New System.Windows.Forms.BindingSource()
    
    this.adventureWorksDataSet = new AdventureWorksLTDataSet();
    this.customerTableAdapter = new AdventureWorksLTDataSetTableAdapters.CustomerTableAdapter();
    this.customerTableAdapter.Fill(this.adventureWorksDataSet.Customer);
    this.customerBindingSource = new System.Windows.Forms.BindingSource();
    
  3. Dodaj następujący kod do ThisAddIn_Startup metoda.Spowoduje to wygenerowanie element hosta, który rozciąga się dokument.Aby uzyskać więcej informacji, zobacz Rozszerzanie dokumenty programu Word oraz skoroszyty programu Excel w dodatki poziomie aplikacji w czasie wykonywania.

            Dim currentDocument As Word.Document = Me.Application.ActiveDocument
    
            Dim extendedDocument As Document = Globals.Factory.GetVstoObject(currentDocument)
    
    
                Word.Document currentDocument = this.Application.ActiveDocument;
    
                Document extendedDocument = Globals.Factory.GetVstoObject(currentDocument);
    
    
  4. Zdefiniowanie kilku zakresów na początku dokumentu.Zakresy te identyfikują gdzie wstawić tekst i umieść formanty.

    extendedDocument.Paragraphs(1).Range.InsertParagraphBefore()
    extendedDocument.Paragraphs(1).Range.InsertParagraphBefore()
    extendedDocument.Paragraphs(1).Range.Text = "The companies listed in the AdventureWorksLT database:   "
    extendedDocument.Paragraphs(2).Range.Text = "  "
    
    Dim range1 As Word.Range = extendedDocument.Paragraphs(2).Range.Characters.First
    Dim range2 As Word.Range = extendedDocument.Paragraphs(2).Range.Characters.Last
    Dim range3 As Word.Range = extendedDocument.Paragraphs(1).Range.Characters.Last
    
    extendedDocument.Paragraphs[1].Range.InsertParagraphBefore();
    extendedDocument.Paragraphs[1].Range.InsertParagraphBefore();
    extendedDocument.Paragraphs[1].Range.Text = 
        "The companies listed in the AdventureWorksLT database:   \n";
    extendedDocument.Paragraphs[2].Range.Text = "  "; 
    
    Word.Range range1 = extendedDocument.Paragraphs[2].Range.Characters.First;
    Word.Range range2 = extendedDocument.Paragraphs[2].Range.Characters.Last;
    Word.Range range3 = extendedDocument.Paragraphs[1].Range.Characters.Last;
    
  5. Dodaj formanty, interfejs do wcześniej zdefiniowanych zakresów.

    Me.button1 = extendedDocument.Controls.AddButton(range1, 60, 15, "1")
    Me.button1.Text = "Previous"
    Me.button2 = extendedDocument.Controls.AddButton(range2, 60, 15, "2")
    Me.button2.Text = "Next"
    
    Me.customerContentControl = extendedDocument.Controls.AddRichTextContentControl(range3, _
        "richTextContentControl1")
    
    this.button1 = extendedDocument.Controls.AddButton(range1, 60, 15, "1");
    this.button1.Text = "Previous";
    this.button2 = extendedDocument.Controls.AddButton(range2, 60, 15, "2");
    this.button2.Text = "Next";
    
    this.customerContentControl = extendedDocument.Controls.AddRichTextContentControl(
        range3, "richTextContentControl1");
    
  6. Związany formant zawartości AdventureWorksLTDataSet za pomocą BindingSource.Dla programistów języka C# Dodaj dwa programy obsługi zdarzeń dla Button kontroli.

    Me.customerBindingSource.DataSource = Me.adventureWorksDataSet.Customer
    Me.customerContentControl.DataBindings.Add("Text", Me.customerBindingSource, _
        "CompanyName", True, Me.customerContentControl.DataBindings.DefaultDataSourceUpdateMode)
    
    this.customerBindingSource.DataSource = this.adventureWorksDataSet.Customer;
    this.customerContentControl.DataBindings.Add("Text", this.customerBindingSource, 
        "CompanyName", true, this.customerContentControl.DataBindings.DefaultDataSourceUpdateMode);
    
    this.button1.Click += new EventHandler(button1_Click);
    this.button2.Click += new EventHandler(button2_Click);
    
  7. Dodaj następujący kod do nawigacji między rekordami bazy danych.

    Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) _
        Handles button1.Click
        Me.customerBindingSource.MovePrevious()
    End Sub
    
    Private Sub button2_Click(ByVal sender As Object, ByVal e As EventArgs) _
        Handles button2.Click
        Me.customerBindingSource.MoveNext()
    End Sub
    
    void button1_Click(object sender, EventArgs e)
    {
        this.customerBindingSource.MovePrevious();
    }
    
    void button2_Click(object sender, EventArgs e)
    {
        this.customerBindingSource.MoveNext();
    }
    

Testowanie dodatek programu

Po otwarciu programu Word, wyświetlane są dane z formantu zawartości AdventureWorksLTDataSet zestawu danych.Przewijać rekordów bazy danych, klikając Dalej i Poprzedni przyciski.

Aby przetestować dodatek

  1. Press F5.

    Formant zawartości o nazwie customerContentControl jest tworzony i wypełniany danymi.W tym samym czasie, obiekt dataset, o nazwie adventureWorksLTDataSet i BindingSource o nazwie customerBindingSource są dodawane do projektu.ContentControl Jest powiązany z BindingSource, które z kolei wiąże się obiektu dataset.

  2. Kliknij przycisk Dalej i Poprzedni przycisków przeglądania rekordów bazy danych.

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

Jak: wypełnianie dokumentów z danymi z obiektów

Jak: aktualizacji źródła danych z danymi z kontroli hosta

Informacje

Składnik BindingSource, omówienie

Koncepcje

Korzystanie z lokalnych plików bazy danych w Przegląd rozwiązań pakietu Office

Omówienie źródeł danych

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