Per Mausklick bewerten und Feedback geben
MSDN
MSDN Library
Entwicklerbibliothek
Visual Studio 2005
Visual Studio
 Visual Studio 2005 Tools for the Mi...
Visual Studio 2005 Tools for the Microsoft Office System
Veröffentlicht: 18. Okt 2005
Von Jürgen Mauerer

Die neuen Visual Studio 2005 Tools for the Microsoft Office System (VSTO 2005) erscheinen parallel zu Visual Studio 2005. Sie übertragen die Funktionen von Visual Studio und .NET Framework auf die bekannten Office-Anwendungen. Dieses Feature zeigt auf Basis der Beta 2, welche Neuerungen VSTO für Entwickler bringt. Einer der Schwerpunkte liegt auf der komfortablen Programmierung verwalteter Add-Ins für Outlook 2003.

Auf dieser Seite

 Einführung
 Templates, Controls und Visual Designer
 XML, Datenbindung und serverseitiger Code
 Verwaltete Add-Ins für Outlook 2003

Einführung

Microsoft Office System ist mehr als nur Word, Excel & Co. Das aktuelle Office verbindet die klassischen Office-Anwendungen (Office 2003) mit Servern und Services und integriert Informationen aus unterschiedlichen Systemen. Zur Plattform gehören unter anderem der SharePoint Portal Server 2003, der Live Communications Server 2003, Office Live Meeting 2003 oder Anwendungen wie Frontpage 2003, InfoPath 2003, Publisher 2003 oder Visio 2003.

Die neue Office-Generation macht zudem auch den Schritt von der reinen Anwendung hin zur Entwicklungsplattform. Denn neben Visual Basic for Applications (VBA) stehen auch die auf .NET basierenden Visual Studio Tools for Office System zur Verfügung. Entwickler können damit auch Visual Basic .NET sowie C# zum Programmieren von Word- oder Excel-Lösungen nutzen und verwalteten Code direkt in Office-Anwendungen der Professional-Edition integrieren. Das Sicherheitsmodell des .NET Framework gilt damit auch für Office-Lösungen und wird intensiv genutzt. Darüber hinaus können Entwickler selbstverständlich auf die umfangreiche Klassenbibliothek des .NET-Framework zugreifen.

Im November 2005 kommt die Entwicklungsumgebung Visual Studio 2005 auf den Markt. Parallel gibt es auch eine neue Version der Visual Studio 2005 Tools for Office System. Microsoft hat hier den Fokus auf die Produktivität gelegt und im Vergleich zur Vorgängerversion einige neue Funktionen integriert. Dazu gehören neue Projekt-Templates, ein visueller Designer für Word 2003 und Excel 2003, Host Controls, Unterstützung des Task Panes, visuelle Datenbindung, Daten-Caching und serverseitiges Programmieren.

Visual Studio 2005 Tools for Office System bringt zudem signifikante Verbesserungen für die Entwicklung von Business-Lösungen, die auf Word 2003 und Excel 2003 basieren. Dazu gehören die Trennung von Daten- und Ansichts-Elementen, Server- und Offline-Szenarien sowie die nahtlose Integration mit den Visual Studio Tools.

Neu ist auch die Unterstützung für verwaltete Add-Ins in Outlook 2003. Damit dehnt Microsoft den Funktionsumfang von VSTO von der Dokumentenebene auf verwaltete Office-Add-Ins auf Anwendungsebene aus. Diese laufen isoliert in einer eigenen Anwendungsdomäne und verwenden die .NET Code Access Security als Sicherheitsmodell.

Developer Center Visual Studio Tools for Office System
Auf dieser englischsprachigen Webseite finden Entwickler alle wichtigen Informationen rund um Visual Studio Tools for Office System, auch zur neuen Version 2005.

Newsgroup Visual Studio Tools for Office System
Auf dieser englischsprachigen Website diskutieren Office-Entwickler über alle Fragen rund um VSTO.

Visual Studio 2005 Tools for Office System - Das ist neu
Dieser Artikel beschreibt die Neuerungen der neuen Version von Visual Studio Tools for Office System. Dazu gehören neue Projekt-Templates, ein Visual-Designer für Word 2003 und Excel 2003, Host Controls, Unterstützung des Task Panes, visuelle Datenbindung, Datencaching und serverseitiges Programmieren. In englischer Sprache.

Neues in Visual Studio 2005 Tools for Office System
Dieser Artikel bringt alle wesentlichen Neuerungen von Visual Studio 2005 Tools for Office System kompakt auf den Punkt und führt zu jeder Neuerung weiterführende Links an. In englischer Sprache.

Blog zu Microsoft Visual Studio 2005 Tools for Office System
In diesem englischsprachigen Blog finden Entwickler die aktuellsten Informationen zu Visual Studio 2005 Tools for Office System, unter anderem zu den Preisen der Standalone-Version sowie den Editionen von Visual Studio 2005, die VSTO 2005 enthalten.

Templates, Controls und Visual Designer

Projekt-Templates
In Visual Studio 2005 Tools for Office System befinden sich die Projekt-Templates im Unterordner Office innerhalb der Ordner mit den Visual Basic- und C#-Projekten. Zudem gibt es neue Projekt-Templates für Excel, Form-Templates für InfoPath und Outlook Add-Ins. Excel-Lösungen auf Basis von Visual Studio 2005 Tools für Office haben jetzt nicht mehr nur eine Code-Datei für die komplette Arbeitsmappe, sondern separate Code-Dateien für jedes Arbeitsblatt und eine für die Arbeitsmappe. Word-Lösungen haben weiterhin eine Code-Datei für das Dokument oder das Template.

Visual Designer
Die Integration der Anwendungsumgebungen von Word 2003 und Excel 2003 in den Visual Studio Designer ist eine der wichtigsten Änderungen der neuen Version. Dadurch können Entwickler in jeder Anwendung das Aussehen des Dokuments gestalten, während sie managed Code schreiben, um die Anwendung zu erweitern. Die Arbeit ähnelt dabei der mit Windows Forms. Beim Start eines Projekts mit Visual Studio 2005 Tools for Office System öffnet sich das Dokument innerhalb von Visual Studio und verhält sich dabei wie ein gewohnter Visual Designer.

Man kann daher ein Dokument mit den nativen Funktionen der jeweiligen Office-Anwendung erzeugen und verändern, beispielsweise mit dem Menü-Befehl Rückgängig, dem Schreiben von Excel-Formeln oder der Suchfunktion in Word. Zudem kann man das Visual Studio Tools-Fenster oder deren Editor nutzen, um das Dokument oder die Arbeitsmappe mit Hilfe von managed Code anzupassen.

Die Toolbars von Excel 2003 und Word 2003 sind innerhalb des Designers zugänglich, voll funktionsfähig und mit den Menüs von Visual Studio verschmolzen. Menüs wie Tools und Ansicht enthalten Funktionen, die gleichzeitig sowohl in Office als auch Visual Studio verfügbar sein müssen. Um die Navigation zu erleichtern, sind die Unterpunkte des Office-Menüs in einem eigenen Submenü gesammelt, das vom korrespondierenden Visual Studio-Menü aus zu erreichen ist. Andere Menüs wie das Datei-Menü enthalten nur Optionen, die innerhalb von Visual Studio ausgeführt werden können und aktivieren nicht alle Office-Menüpunkte.

Word 2003 und Excel 2003 erlauben im Design-Modus, Änderungen durchzuführen, die nicht während des normalen Laufzeit-Modus möglich sind. Ein in Visual Studio geöffnetes Dokument befindet sich immer im Design-Modus. Um das Dokument im Laufzeit-Modus zu betrachten, muss man das Dokument außerhalb von Visual Studio öffnen oder im Debug-Modus starten.

Managed Controls
Entwickler können in Visual Studio 2005 Tools for Office System managed Windows Forms-Steuerelemente sowie die neuen Word- und Excel Host Controls für ihre Lösung nutzen. Da zudem Word und Excel in die Visual Studio IDE integriert sind, nähern sich die Entwicklung für Office- und Windows-Lösungen immer mehr an. Elemente wie Zellen, Listen oder Bookmarks werden zu Steuerelementen (Host Controls), deren Code leicht zugänglich ist. Jedes Host Control ist eindeutig zu identifizieren, beherrscht Datenbindung und stellt ein kompletteres Ereignismodell bereit.

Man kann auf einfache Weise Windows Forms-Steuerelemente per Drag and Drop von der Visual Studio Toolbox auf die Oberfläche des Dokuments ziehen und die Eigenschaften des Steuerelements im Eigenschaften-Fenster verändern.

Host Controls
Mit der Version 2005 kommen neue Steuerelemente ins Spiel, die so genannten Host Controls (in der Beta 1 hießen sie noch View Controls), die einige Office-Objekte erweitern. In Word 2003 gibt es die Host Controls Bookmark, XMLNode und XML Nodes, in Excel 2003 die Host Controls NamedRange, XMLMappedRange, ListObject und Chart.

Es gibt vier Wege, Host Controls an ein Word-Dokument beziehungsweise ein Excel-Arbeitsblatt anzufügen:

  • Da Host Controls erweiterte Office-Objekte sind, kann man sie während des Designs von Visual Studio aus einfügen. Ein Word Bookmark-Steuerelement etwa fügt man über das Einfügen-Menü und der Auswahl von Bookmark ein.

  • Zweitens kann man die Host Controls per Drag and Drop über die Visual Studio-Toolbox in das Dokument oder das Arbeitsblatt ziehen.

  • Man kann Host Controls vom Datenquellen-Fenster in ein Dokument ziehen und dadurch Controls hinzufügen, die bereits an Daten gebunden sind.

  • Nur die Host Controls Bookmark, ListObject, NamedRange und Chart lassen sich auch eigenhändig programmieren.

Action Pane
Mit Office 2003 führte Microsoft die Smart Documents ein. Sie erweitern die Funktionalität der Smart Tags und stellen wie diese kontextabhängig Informationen und Funktionen bereit. Da Smart Documents auf XML basieren, benötigen Entwickler kein spezielles Know-how, sondern erstellen die "intelligenten Dokumente" auf der Basis bereits vorhandener XML-Tools und Datenquellen.

In der Version 2003 der Visual Studio Tools für Office erfolgte die Programmierung der so genannten Task Panes (kontextbezogene Informationen zu einem bestimmten Dokument) über die ISmartDocument-Schnittstelle. Die Version 2005 erleichtert die Programmierung von Task Panes für Word und Excel durch das ActionsPane-Objekt. Das Action Pane fungiert als eine Art Container für jede Form von Windows Forms-Steuerelementen.

Webcast VSTO 2005: ActionsPane-Programmierung
Smart Documents sind eine gute Möglichkeit, Daten aus Backend-Systemen in Office einfließen zu lassen, ohne die gewohnte Oberfläche zu verlassen. Nur leider unterliegen sie einigen Einschränkungen und sind nicht ganz einfach zu erstellen. Dieser Webcast zeigt, wie einfach dies nun mit den Visual Studio 2005 Tools for Office System zu realisieren ist.

Visual Studio 2005 Tools for Office System: Online-Dokumentation
Auf dieser US Website finden Entwickler alle wichtigen Informationen zu Visual Studio 2005 for Office System in Form von Artikeln, Code-Beispielen oder Downloads.

Programmieranleitungen für Visual Studio 2005 Tools for Office System
Auf dieser Webseite bietet Microsoft Entwicklern praktische Tipps (so genannte Hands-On Labs) für die Programmierung mit VSTO 2005 (noch auf Basis der Beta 1-Version) zum Download an. Unter anderem lernen Entwickler, wie sie View Controls nutzen, das Actions Pane programmieren, Daten von einer SQL Server-Datenbank an View Controls binden sowie Daten-Caching für Offline-Szenarien durchführen. In englischer Sprache.

Code-Beispiele für Visual Studio 2005 Tools for Office System
Auf dieser Webseite finden Entwickler Code-Beispiele zu Anwendungen, die mit Visual Studio 2005 Tools for Office System erstellt wurden. In englischer Sprache.

XML, Datenbindung und serverseitiger Code

Trennung von Inhalt und Darstellung
Visual Studio 2005 Tools für Office trennt die Daten von Ansichtselementen, indem man Daten als XML einbettet. Mit Daten sind Informationen gemeint, die in einem Dokument gespeichert sind (Text, Zahlen etc.), während sich die Ansicht auf die Benutzeroberfläche sowie das Objektmodell der Anwendung (Excel 2003, Word 2003) bezieht.

Zudem kann man typisierte DataSets nutzen, um ein schema-orientiertes Programmiermodell für die Interaktion mit den XML-Daten herzustellen. XML Schemas sind formale Spezifikationen aller in einem Dokumenttyp erlaubten Strukturen, in der die Bezeichnungen der in Dokumenteninstanzen zulässigen Tags und deren Verschachtelung definiert sind.

Das direkte Programmieren der Daten über XML Schemas bedeutet, dass der Code, der mit den Daten arbeitet, nicht das Objektmodell von Word 2003 und Excel 2003 ansprechen muss. Der Code bezieht sich daher nicht direkt auf spezifische Zellen oder Tabellen, die der Benutzer bewegen kann, sondern greift direkt auf die XML-Daten zu.

Datenbindung
Die Datenbindung erfolgt in Visual Studio 2005 Tools für Office wie bei Windows Forms-Projekten. Über das Datenquellen-Fenster können Entwickler per Drag and Drop eine Datenquelle in ihr Dokument ziehen, die automatisch ein Steuerelement enthält, das an die Datenquelle gebunden wird. Die Daten werden hier der Datenquelle entnommen und in den Steuerelementen der Benutzeroberfläche angezeigt; Änderungen der Werte in den Steuerelementen werden zudem automatisch in der Datenquelle aktualisiert.

Bei Host Controls unterscheidet man zwischen einfacher und komplexer Datenbindung. Bei ersterer wird eine bestimmte Eigenschaft aus einer Datenquelle an eine Eigenschaft des Steuerelements gebunden, der Entwickler hat dabei keine zusätzliche Arbeit. Das NamedRange-Host Control etwa hat eine Value2-Eigenschaft, die man an ein bestimmtes Feld einer Tabelle in einem DataSet binden kann. Ändert sich das Feld in der Datenquelle, ändert sich auch der Wert im NamedRange-Control. Mit Ausnahme von XMLNodes (Collection) unterstützen alle Host Controls die einfache Datenbindung.

Bei der komplexen Bindung hingegen wird eine vollständige Datenquelle (z.B. eine komplette Tabelle) an das Steuerelement gebunden. Nur das ListObjekt-Host Control von Excel 2003 unterstützt die komplexe Datenbindung.

Daten-Caching
Durch das Speichern von Daten als XML sind Offline-Szenarien möglich. Öffnet ein Nutzer ein Dokument erstmals oder fordert das Dokument vom Server an, füllt es die XML-Datei mit den zuletzt genutzten Daten. Diese XML-Datei wird im Dokument zwischengespeichert und ist damit offline verfügbar. Um Daten zwischenspeichern zu können, muss man das CachedAttribute an Datentypen wie String, DataSet oder DataTable anhängen. Die Steuerelemente, die an die Cached-Daten gebunden sind, werden synchronisiert, so dass Veränderungen der Daten auf dem Server automatisch gezeigt werden, wenn das Dokument auf dem Client geöffnet wird.

Serverseitiges Programmieren
Da die Daten wie erwähnt von der Ansicht getrennt sind, ist es möglich, über die ServerDocument-Klasse die Daten zu ändern, ohne Office zu starten. Im bisherigen Modell musste man Word oder Excel geöffnet haben. Dies blockierte das Erzeugen von Office-Dokumenten von einer ASP.NET-Applikation, da Office-Anwendungen primär für den Einsatz in Clientumgebungen gedacht sind, nicht jedoch für Serverszenarien.

Man kann die Laufzeitumgebung von Visual Studio 2005 Tools for Office System auf einem Server starten, ohne Word oder Excel öffnen zu müssen. Dadurch ist es möglich, die Daten von serverseitigem Code aus zu ändern. Öffnet der User das zugehörige Office-Dokument, synchronisiert die Ansicht die geänderten Daten über Datenbindung.

In diesem Modell braucht man Word und Excel nicht, um die Daten auf dem Server zu schreiben, nur um sie auf dem Client zu betrachten. Word und Excel müssen also nicht einmal auf dem Server installiert sein. Das Office-Dokument fungiert als Datenindex, da programmatisch Zugang zu den Daten möglich ist, die in das Dokument eingebettet sind.

Artikel zu VSTO 2005 für Excel

VSTO 2005 Hands-on Labs für Excel 2003
In diesen praktischen Anleitungen lernen Entwickler, wie sie mit Hilfe von Visual Studio 2005 Tools for Office System Anwendungen für Excel 2003 erstellen können. Außerdem erhalten sie Informationen über Host Controls, das Action Pane und Datenbindung. In englischer Sprache.

Verwaltung von Windows SharePoint Services-Webseiten mit Excel 2003
Dieser englischsprachige Artikel beschreibt, wie man mit Hilfe von Excel 2003 und VSTO 2005 Windows SharePoint Services-Webseiten erzeugt und verwaltet. Er zeigt zugleich, wie Entwickler mit Hilfe von Visual Studio 2005 Tools for Office System Geschäftsprozesse verbessern und vereinfachen können.

Rechnungsstellung in Excel mit Visual Studio 2005 Tools for Office System
Dieser Artikel bietet eine Excel-Beispiellösung zur Rechnungserstellung, die mit Visual Studio 2005 Tools für Office (Beta 1) in Microsoft Visual C# erstellt wurde. Dieser Artikel enthält auch Links zu englischsprachigen Seiten.

Kostenvoranschläge mit Visual Studio 2005 Tools for Office System
Dieser englischsprachige Artikel zeigt eine Lösung für Auftragseingänge und Kostenvoranschläge auf Basis von Word 2003 und Excel 2003, die mit Visual Studio 2005 Tools for Office System (Beta 1) erstellt wurde.

Artikel zu VSTO 2005 für Word

VSTO 2005 Hands-on Labs für Word 2003
In diesen praktischen Anleitungen lernen Entwickler, wie sie mit Hilfe von Visual Studio 2005 Tools for Office System Anwendungen für Word 2003 erstellen können. In englischer Sprache.

Statusberichtsanwendung für Word 2003 mit VSTO 2005
Dieser Artikel beschreibt, wie man mit VSTO 2005 (Beta 1) eine Statusberichtsanwendung für Word 2003 entwickelt, die XML Schemas und das Action Pane verwendet. In englischer Sprache.

Server-Fähigkeiten in Visual Studio 2005 Tools für Office
Dieser Artikel beschreibt die Erstellung einer Server-Lösung mit Microsoft Visual Studio 2005 Tools for Office System (Beta 1), die Word 2003 und Excel 2003 auf dem Server nutzt. In englischer Sprache.

Artikel zu Migration und Sicherheit

Sicherheit in VSTO 2005
MSDN-Experte Eric Lippert liefert in diesem Video Informationen zur Codezugriffssicherheit und zur Sicherheit in Visual Studio 2005 Tools for Office System. In englischer Sprache.

Migration zu VSTO 2005: Konvertierung von VBA-Code in Visual Basic .NET
Dieser englischsprachige Artikel führt Gründe für die Migration zu VSTO 2005 auf und behandelt einzelne Details der Programmierung beim Migrieren von VBA zu Microsoft Visual Basic .NET.

Migration von Excel-VBA-Projektmappen zu Visual Studio 2005 Tools for Office System
Dieser Artikel beschreibt das Konvertieren von Projektmappen aus Microsoft Visual Basic für Applikationen (VBA) zu Microsoft Visual Studio 2005 Tools for Office System und zu Microsoft Visual Basic 2005. Konkret geht es um die Migration der Projektmappe Trey Research IIS Log Analyzer von VBA zu VSTO 2005, um auf mögliche Probleme beim Migrieren von Projekten einzugehen.

Verwaltete Add-Ins für Outlook 2003

Visual Studio 2005 Tools für Office unterstützt jetzt verwaltete Add-Ins für Outlook 2003 sowohl zur Entwurfszeit als auch zur Laufzeit. Damit dehnt Microsoft den Funktionsumfang von der Dokumentenebene auf verwaltete Add-Ins für die Anwendungsebene aus. Dazu gibt es neue Projektvorlagen für Outlook Add-Ins und Setup-Projekte für Add-Ins.

Der AddinLoader, eine dedizierte Loader-Komponente für Add-Ins, erstellt für jedes Add-In eine eigene Anwendungsdomäne und sorgt für die Einhaltung strenger Sicherheitsrichtlinien (Status Volle Vertrauenswürdigkeit zum Laden der Add-Ins notwendig). Da die AddinLoader-Komponente das Laufzeitmodul von Visual Studio 2005 Tools for Office System verwendet, stellt sie eine einzelne, konsistente Methode bereit, mit der Benutzerdefinitionen auf Dokumentenebene und auf Anwendungsebene in Microsoft Office-Anwendungen geladen werden.

Die Add-In-Projektvorlage enthält eine primäre Klasse für das Add-In, die die Schnittstelle IStartup implementiert, welche auch für Anpassungen von Visual Studio 2005 Tools for Office System verwendet wird. Der erstellte Code wird mithilfe partieller Klassen als eine Klasse dargestellt, die in zwei Dateien aufgeteilt ist. Auf diese Weise bleibt der Code mit Dokumentanpassungen in Visual Studio 2005 Tools for Office System konsistent.

Wenn Sie Projekte mit Visual Studio 2005 Tools for Office System für Microsoft Office Word oder Microsoft Office Excel erstellen, entspricht die primäre Klasse einem Dokument oder einem Arbeitsblatt. Im Fall des Outlook-Add-Ins stellt die primäre Klasse die Outlook-Anwendung dar, da das Add-In auf Anwendungsebene und nicht auf Dokumentenebene funktioniert. Diese Klasse fungiert damit als ein einfacher Wrapper für das Outlook-Anwendungsobjekt.

Architektur des Outlook Add-In-Supports in Visual Studio 2005 Tools for Office System
In diesem Artikel finden Sie Informationen zur neuen Unterstützung für verwaltete Add-Ins in Microsoft Office Outlook 2003, die mit Visual Studio 2005 Tools for Microsoft Office System eingeführt wurde.

VSTO 2005 Hands-on Labs für Outlook Add-Ins
In diesen praktischen Anleitungen lernen Entwickler, wie sie mit Hilfe von Visual Studio 2005 Tools for Office System Outlook Add-Ins erstellen können. In englischer Sprache.

Codebeispiele für Outlook Add-Ins
Auf dieser englischsprachigen Webseite finden Entwickler fünf Beispielprojekte für Outlook Add-Ins, die mit Hilfe von Visual Studio 2005 Tools for Office System erstellt wurden.


© 2009 Microsoft Corporation. Alle Rechte vorbehalten. Nutzungsbedingungen | Markenzeichen | Informationen zur Datensicherheit
Page view tracker