Udostępnij za pośrednictwem


Używanie kontrolek WPF w rozwiązaniach pakietu Office

Mimo że rozwiązania utworzone przy użyciu narzędzi deweloperskich pakietu Office w programie Visual Studio są przeznaczone do pracy bezpośrednio z kontrolkami windows Forms, można również używać kontrolek WPF w swoich rozwiązaniach. Windows Presentation Foundation (WPF) to alternatywa dla systemu Windows Forms do projektowania interfejsów użytkownika. WPF używa języka znaczników o nazwie Extensible Application Markup Language (XAML), aby zapewnić nowe techniki dołączania interfejsu użytkownika, multimediów i dokumentów. Aby uzyskać więcej informacji, zobacz Omówienie WPF.

Dotyczy: informacje w tym temacie dotyczą projektów na poziomie dokumentu i projektów dodatków VSTO. Zobacz Funkcje dostępne według aplikacja pakietu Office lication i typu projektu.

Każdy element interfejsu użytkownika, który może hostować kontrolki Windows Forms w rozwiązaniu pakietu Office, może również hostować kontrolki WPF. Składają się na nią następujące elementy:

  • Dokumenty i arkusze w dostosowaniach na poziomie dokumentu.

  • Okienka akcji w dostosowaniach na poziomie dokumentu.

  • Niestandardowe okienka zadań w dodatku VSTO.

  • Regiony formularzy w dodatku VSTO dla programu Outlook.

Dodawanie kontrolek WPF do projektów pakietu Office w czasie projektowania

Nie można dodawać kontrolek WPF bezpośrednio do elementów interfejsu użytkownika w rozwiązaniach pakietu Office. Zamiast tego dodaj element Kontrolka użytkownika (WPF) do projektu i użyj go jako powierzchni projektowej dla kontrolek WPF. Następnie dodaj kontrolkę użytkownika WPF do elementu interfejsu użytkownika w projekcie.

Aby dodać kontrolki WPF do okienka akcji, niestandardowego okienka zadań lub regionu formularza

  1. Otwórz projekt, do którego chcesz dodać niestandardowe okienko zadań, okienko akcji lub region formularza.

  2. Dodaj element Kontrolka użytkownika (WPF) do projektu.

  3. Z przybornika dodaj kontrolki WPF do powierzchni projektowej kontrolki użytkownika WPF.

    Domyślnie po otwarciu projektanta kontrolki użytkownika WPF przybornik zawiera tylko kontrolki WPF.

  4. Skompiluj projekt.

  5. Dodaj okienko akcji, region formularza lub niestandardowe okienko zadań do projektu:

  6. Na karcie Kontrolki użytkownika WPF w przyborniku przeciągnij kontrolkę użytkownika WPF do projektanta dla okienka akcji, regionu formularza lub okienka zadań niestandardowych.

    Program Visual Studio automatycznie tworzy obiekt hostujący kontrolkę ElementHost użytkownika WPF w elemecie interfejsu użytkownika.

  7. Ponownie skompiluj projekt.

Aby dodać kontrolki WPF do dokumentu lub arkusza w projekcie na poziomie dokumentu

  1. Otwórz projekt na poziomie dokumentu dla programu Word lub Excel.

  2. Dodaj element Kontrolka użytkownika (WPF) do projektu.

  3. Z przybornika dodaj kontrolki WPF do powierzchni projektowej kontrolki użytkownika WPF.

  4. Skompiluj projekt.

  5. Dodaj element kontrolki użytkownika (czyli kontrolkę użytkownika formularzy systemu Windows) do projektu.

  6. Otwórz projektanta dla kontrolki użytkownika formularzy systemu Windows.

  7. Na karcie Kontrolki użytkownika WPF projektu w przyborniku przeciągnij kontrolkę użytkownika WPF do projektanta.

    Program Visual Studio automatycznie tworzy obiekt hostujący kontrolkę ElementHost użytkownika WPF w kontrolce użytkownika windows Forms.

  8. Napisz kod, który programowo dodaje kontrolkę użytkownika windows Forms do dokumentu lub skoroszytu. Aby uzyskać więcej informacji, zobacz Dodawanie kontrolek do dokumentów pakietu Office w czasie wykonywania.

    Uwaga

    Nie można przeciągnąć kontrolki użytkownika formularzy systemu Windows do dokumentu lub arkusza w projektancie.

  9. Ponownie skompiluj projekt.

Hostowanie kontrolek WPF przy użyciu klasy ElementHost

Program Visual Studio udostępnia funkcje, które ułatwiają korzystanie z kontrolek Windows Forms w rozwiązaniach pakietu Office, ale nie udostępnia podobnych funkcji dla kontrolek WPF. Można na przykład dodać kontrolki Windows Forms do dokumentów i arkuszy w czasie projektowania, przeciągając kontrolki z przybornika lub w czasie wykonywania przy użyciu metod pomocnika. Jednak te narzędzia nie są dostępne dla kontrolek WPF.

Kontrolki WPF używają ElementHost klasy jako warstwy integracji między kontrolką lub formularzem systemu Windows Forms a kontrolkami WPF. Podczas dodawania kontrolek WPF do rozwiązania w czasie projektowania program Visual Studio automatycznie generuje ElementHost obiekt.

Zasoby WPF

Aby uzyskać więcej informacji na temat problemów z architekturą i projektowaniem hostowania kontrolek WPF w kontrolkach i formularzach systemu Windows Forms, zobacz następujące tematy:

Aby uzyskać więcej informacji na temat dodawania kontrolek WPF do kontrolek i formularzy windows Forms w programie Visual Studio w czasie projektowania, zobacz następujące tematy: