Beratung und Entwicklung - Mehr Produktivität für Microsoft Office
Problem: Der eingebaute DateiNeu-Dialog in der Office 2010 "Backstage View" wird aus folgenden Gründen häufig kritisiert: a) es ist schwierig, firmeneigene Dokumentvorlagen schnell und strukturiert aufzulisten; b) er enthält Elemente, die nicht verborgen werden können; außerdem kann dieser Teil des "Backstage" nicht angepasst werden; c) er kann keine Erläuterungen oder Hinweise zur markierten Dokumentvorlage anzeigen.
Anforderung: Erstellung einer DateiNeu-Funktion, die nur die Firmen-Dokumentvorlagen in einer Baumansicht strukturiert anzeigt. Optionale Erläuterungen sollen möglich sein. Eine Suchfunktion und eine "Favoriten"-Funktion sind ebenfalls gewünscht. Der Einsatz erfolgt auf Windows 7-Rechnern mit einem US-Office 2010.
Lösung: Ein Word 2010 Add-in wurde entwickelt unter Verwendung der Visual Studio Tools for Office Runtime (VSTO und VB.NET).
Die DateiNeu-Schaltfläche in der "Backstage View" (natürlich sind auch Strg+N und das FileNew-Symbol abgefangen und werden auf den neuen Dialog umgeleitet):
Der DateiNeu-Dialog mit der Baumansicht (TreeView und ListView-Steuerelemente). Bei Klick auf eine Dokumentvorlage werden die Erläuterungen angezeigt:
Die Favoriten des Benutzers:
Die Suchfunktion listet alle Dokumentvorlage auf, die den Suchbegriff im Namen oder in der Erläuterung enthalten:
Auf der Dateiebene liegen alle dotx- und dotm-Dateien in der Wurzel des Vorlagenverzeichnisses, und nicht in den Unterordnern. Die Unterordner enthalten nur XML-Dateien mit den Metadaten. Beim Start des Add-ins wird diese Struktur in einem Hilfsthread (Backgroundworker) eingelesen.
Beispiel für Metadaten:
<?xml version="1.0" encoding="ISO-8859-1"?>
<document-element>
<doc-name>NY Memo</doc-name>
<doc-desc>NY Style Memo template with dialog to adjust the document
for Language, Office and Personal Data</doc-desc>
<filename>WC_Memo.dotm</filename>
</document-element>
Kundenseitig wurde diese Anordnung bevorzugt mit Rücksicht auf ein bestehendes System zur Verteilung geänderter Inhalte (neue oder aktualisierte Dokumentvorlagen können einfach in das Wurzelverzeichnis kopiert werden).
Grundsätzlich wäre es möglich gewesen, auf die physische Ordnerstruktur zu verzichten und sowohl Baumstruktur als auch die Detaildaten zu den Vorlagen in einer einzigen XML-Datei zu halten (so habe ich es auch in einem verwandten Projekt realisiert).