Udostępnij za pośrednictwem


Dodawanie kontrolek Windows Forms do dokumentów pakietu Office

Kontrolki Formularzy systemu Windows można dodawać do dokumentów programu Microsoft Office Excel i Microsoft Office Word w czasie projektowania w projektach na poziomie dokumentu. W czasie wykonywania można dodawać kontrolki w dostosowaniach na poziomie dokumentu i w dodatku VSTO. Możesz na przykład dodać kontrolkę ComboBox do arkusza, aby użytkownicy mogli wybrać elementy z listy opcji.

Dotyczy: informacje w tym temacie dotyczą projektów na poziomie dokumentu i projektów dodatków VSTO dla programów Excel i Word. Aby uzyskać więcej informacji, zobacz Funkcje dostępne przez aplikacja pakietu Office lication i typ projektu.

W tym temacie opisano następujące zadania:

Dodawanie kontrolek w czasie projektowania

Istnieje kilka sposobów dodawania kontrolek formularzy systemu Windows do dokumentu w projekcie na poziomie dokumentu w czasie projektowania.

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 Personalizowanie środowiska IDE.

Aby przeciągnąć kontrolkę Windows Forms do dokumentu

  1. Utwórz lub otwórz projekt skoroszytu programu Excel lub projekt dokumentu programu Word w programie Visual Studio, aby dokument był widoczny w projektancie. Aby uzyskać informacje na temat tworzenia projektów, zobacz How to: Create Office projects in Visual Studio (Instrukcje: tworzenie projektów pakietu Office w programie Visual Studio).

  2. Na karcie Wspólne kontrolki przybornika kliknij kontrolkę, którą chcesz dodać, i przeciągnij ją do dokumentu.

    Uwaga

    Po wybraniu kontrolki w programie Excel zobaczysz na pasku formuły =EMBED("WinForms.Control.Host",""). Ten tekst jest niezbędny i nie należy go usuwać.

Aby narysować kontrolkę Formularze systemu Windows w dokumencie

  1. Utwórz lub otwórz projekt skoroszytu programu Excel lub projekt dokumentu programu Word w programie Visual Studio, aby dokument był widoczny w projektancie. Aby uzyskać informacje na temat tworzenia projektów, zobacz How to: Create Office projects in Visual Studio (Instrukcje: tworzenie projektów pakietu Office w programie Visual Studio).

  2. Na karcie Typowe kontrolkiprzybornika kliknij kontrolkę, którą chcesz dodać.

  3. W dokumencie kliknij miejsce, w którym ma znajdować się lewy górny róg kontrolki, a następnie przeciągnij go do miejsca, w którym ma znajdować się prawy dolny róg kontrolki.

    Kontrolka jest dodawana do dokumentu z określoną lokalizacją i rozmiarem.

    Uwaga

    Po wybraniu kontrolki w programie Excel zobaczysz na pasku formuły =EMBED("WinForms.Control.Host",""). Ten tekst jest niezbędny i nie należy go usuwać.

Aby dodać kontrolkę Formularze systemu Windows do dokumentu, klikając kontrolkę jednym kliknięciem

  1. Utwórz lub otwórz projekt skoroszytu programu Excel lub projekt dokumentu programu Word w programie Visual Studio, aby dokument był widoczny w projektancie. Aby uzyskać informacje na temat tworzenia projektów, zobacz How to: Create Office projects in Visual Studio (Instrukcje: tworzenie projektów pakietu Office w programie Visual Studio).

  2. Na karcie Typowe kontrolkiprzybornika kliknij kontrolkę, którą chcesz dodać

  3. Jeden z dokumentów, kliknij, gdzie chcesz dodać kontrolkę.

    Kontrolka jest dodawana do dokumentu o domyślnym rozmiarze.

    Uwaga

    Po wybraniu kontrolki w programie Excel zobaczysz na pasku formuły =EMBED("WinForms.Control.Host",""). Ten tekst jest niezbędny i nie należy go usuwać.

Aby dodać kontrolkę Formularze systemu Windows do dokumentu, klikając dwukrotnie kontrolkę

  1. Utwórz lub otwórz projekt skoroszytu programu Excel lub projekt dokumentu programu Word w programie Visual Studio, aby dokument był widoczny w projektancie. Aby uzyskać informacje na temat tworzenia projektów, zobacz How to: Create Office projects in Visual Studio (Instrukcje: tworzenie projektów pakietu Office w programie Visual Studio).

  2. Na karcie Wspólne kontrolki przybornika kliknij dwukrotnie kontrolkę, którą chcesz dodać.

    Kontrolka jest dodawana do dokumentu w środku dokumentu lub aktywnego okienka.

    Uwaga

    Po wybraniu kontrolki w programie Excel zobaczysz na pasku formuły =EMBED("WinForms.Control.Host",""). Ten tekst jest niezbędny i nie należy go usuwać.

Aby dodać kontrolkę Formularze systemu Windows do dokumentu, naciskając klawisz Enter

  1. Utwórz lub otwórz projekt skoroszytu programu Excel lub projekt dokumentu programu Word w programie Visual Studio, aby dokument był widoczny w projektancie. Aby uzyskać informacje na temat tworzenia projektów, zobacz How to: Create Office Projects in Visual Studio (Jak tworzyć projekty pakietu Office w programie Visual Studio).

  2. Na karcie Wspólne kontrolki przybornika kliknij kontrolkę, którą chcesz dodać, i naciśnij klawisz Enter.

    Kontrolka jest dodawana do dokumentu w środku dokumentu lub aktywnego okienka.

    Uwaga

    Po wybraniu kontrolki w programie Excel zobaczysz na pasku formuły =EMBED("WinForms.Control.Host",""). Ten tekst jest niezbędny i nie należy go usuwać.

Dodawanie kontrolek w czasie wykonywania w projektach na poziomie dokumentu

Kontrolki Windows Forms można dodawać programowo do dokumentu w czasie wykonywania. W programie Word użyj metod Controls właściwości ThisDocument klasy . W programie Excel użyj metod Controls właściwości Sheetn klasy. Każda metoda ma kilka przeciążeń, które umożliwiają określenie lokalizacji kontrolki na różne sposoby.

Po dodaniu kontrolki Formularze systemu Windows do dokumentu w czasie wykonywania kontrolka nie jest utrwalana w dokumencie po zamknięciu dokumentu. Możesz ponownie utworzyć kontrolkę przy następnym otwarciu dokumentu. Aby uzyskać więcej informacji, zobacz Dodawanie kontrolek do dokumentów pakietu Office w czasie wykonywania.

Aby dodać kontrolkę Windows Forms w czasie wykonywania

  1. Użyj metody o nazwie Dodaj<klasę> kontrolki (gdzie klasa kontrolki jest nazwą klasy kontrolki Windows Forms, którą chcesz dodać, na przykład AddButton).

    W poniższym przykładzie kodu pokazano, jak dodać element Button do komórki C5 Sheet1 w projekcie na poziomie dokumentu dla programu Excel.

    private void Sheet1_Startup(object sender, System.EventArgs e)
    {
        Microsoft.Office.Tools.Excel.Controls.Button salesButton;
        salesButton = this.Controls.AddButton(this.get_Range("C5"), "salesButton");
        salesButton.Text = "Calculate Total Sales";
    }
    

Dodawanie kontrolek w czasie wykonywania w dodatku VSTO

Kontrolki formularzy systemu Windows można dodawać programowo do dowolnego otwartego dokumentu w czasie wykonywania. Najpierw wygeneruj element hosta oparty na otwartym dokumencie lub arkuszu. Następnie w programie Word użyj metod Controls właściwości nowego elementu hosta. W programie Excel użyj metod Controls właściwości nowego elementu hosta. Każda metoda ma kilka przeciążeń, które umożliwiają określenie lokalizacji kontrolki na różne sposoby.

Po dodaniu kontrolki Formularze systemu Windows do dokumentu w czasie wykonywania kontrolka nie jest utrwalana w dokumencie po zamknięciu dokumentu. Możesz ponownie utworzyć kontrolkę przy następnym otwarciu dokumentu. Aby uzyskać więcej informacji, zobacz Dodawanie kontrolek do dokumentów pakietu Office w czasie wykonywania.

Aby uzyskać więcej informacji na temat generowania elementów hosta w projektach dodatków VSTO, zobacz Rozszerzanie dokumentów programu Word i skoroszytów programu Excel w dodatku VSTO w czasie wykonywania.

Aby dodać kontrolkę Windows Forms w czasie wykonywania

  1. Użyj metody o nazwie Dodaj<klasę> kontrolki (gdzie klasa kontrolki jest nazwą klasy kontrolki Windows Forms, którą chcesz dodać, na przykład AddButton).

    Uwaga

    W projektach dodatków VSTO przeznaczonych dla programu .NET Framework 4 lub nowszego należy dodać odwołanie do zestawu Microsoft.Office.Tools.Excel.v4.0.Utilities.dll lub Microsoft.Office.Tools.Word.v4.0.Utilities.dll, aby uzyskać dostęp do metod Dodaj<klasę> sterowania.

    W poniższym przykładzie kodu pokazano, jak dodać element Button do pierwszego akapitu aktywnego dokumentu przy użyciu dodatku programu Word VSTO.

    Microsoft.Office.Tools.Word.Controls.Button salesButton;
    
    Document extendedDocument = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    
    
    extendedDocument.Paragraphs[1].Range.InsertParagraphBefore();
    salesButton = extendedDocument.Controls.AddButton(
        extendedDocument.Paragraphs[1].Range, 75, 18, "salesButton");
    salesButton.Text = "Calculate Sales";