Požadavky: Použijte VSTO k vytvoření jednoduchého plug-inu pro Office, například získání doplňku délky znaku ve Wordu čínské.
Model Word objektu
Word nabízí stovky objektů k interakci. Tyto objekty jsou organizovány v hierarchii, která přísně odpovídá uživatelskému rozhraní. Objekt Application je na vrcholu hierarchie. Tento objekt představuje aktuální instanci Wordu. Objekt Application obsahuje objekty Dokument, Výběr, Záložka a Rozsah. Každý z těchto objektů má řadu metod a vlastností, které lze použít k manipulaci a interakci s objektem.
Následující obrázek ukazuje pohled na tyto objekty v hierarchii objektového modelu ve Wordu.
Dokumentace:Přihlášení k hypertextovému odkazu je viditelné.
Aplikační objekt
Objekt Application reprezentuje Word aplikaci a je rodičem všech ostatních objektů. Jeho členové se obvykle vztahují na Slovo jako celek. Jeho vlastnosti a metody můžete využít k ovládání prostředí ve Wordu.
V projektu s doplňkem VSTO můžete přistupovat k objektu ThisAddIn pomocí polí Application třídy Application.
V projektu na úrovni dokumentu lze objekt ThisDocument otevřít pomocí vlastnosti Application třídy Application.
Objekt dokumentu
Objekt Dokument je středem programování ve Wordu. Představuje dokument a veškerý jeho obsah. Když otevřete dokument nebo vytvoříte nový dokument, vytvoří se nový objekt Dokument, který se přidá do kolekce Aplikace objektu Dokumenty. Dokument s zaměření se nazývá aktivní dokument. Je reprezentován vlastností Application objektu ActiveDocument.
Když vytvoříte projekt na úrovni dokumentu, můžete se k členovi ThisDocument připojit pomocí třídy Document generované v projektu. Objekt ThisDocument lze získat použitím klíčového slova Me nebo this pro kód ve třídě Document, nebo použitím Globals.ThisDocument pro kód mimo třídu ThisDocument.
Objekt výběru
Objekt Selection představuje aktuálně vybranou oblast. Při provádění akce v uživatelském rozhraní Wordu, například tučným písmem, můžete text vybrat nebo zvýraznit a poté aplikovat formátování. Objekt Selection je v dokumentu vždy přítomen. Pokud nic není kontrolováno, ukazuje to místo vložení. Navíc vybraný obsah může obsahovat více nesousedních bloků textu.
Objekt dosahu
Objekt Range reprezentuje sousední oblasti v dokumentu a je definován pozicí znaků na začátku a konci. Není omezena na jeden objekt v Range. V jednom dokumentu můžete definovat více objektů Range. Objekty s dosahem mají následující charakteristiky:
- Může obsahovat pouze jednotlivé vkladové body, nebo rozsah textu či celý dokument.
- Obsahuje netištěné znaky, jako jsou mezery, záložky a značky odstavců.
- Může to být oblast reprezentovaná aktuálně vybraným obsahem nebo oblast, která se od tohoto obsahu liší.
- Není viditelný v dokumentu, na rozdíl od vybraného obsahu, který je vždy viditelný.
- Není uložen v dokumentaci a existuje pouze v době, kdy kód běží.
- Když je text vložen na konec rozsahu, Word automaticky rozšíří rozsah o vložený text.
Objekty řízení obsahu (Objekty řízení obsahu)
ContentControl poskytuje způsob, jak ovládat vstup a vykreslování textu a dalších typů obsahu v dokumentu Word. ContentControl dokáže zobrazit mnoho různých typů uživatelského rozhraní optimalizovaných pro použití ve Word dokumentech, například vícenásobné textové ovladače, výběr dat nebo kombinační boxy. ContentControl můžete také použít k tomu, abyste zabránili uživatelům upravovat určité části dokumentu nebo šablony.
Visual Studio rozšiřuje objekt ContentControl na několik různých ovladačů hostitele. Zatímco objekt ContentControl zobrazuje všechny různé typy uživatelského rozhraní pro ovládání obsahu, Visual Studio poskytuje pro každou kontrolu obsahu jiný typ. Například můžete použít RichTextContentControl k vytvoření textového řízení pro více zpráv, nebo použít DatePickerContentControl k vytvoření výběru dat. Tyto hostitelské ovládací prvky se chovají podobně jako nativní ContentControls, ale mají také další možnosti pro svazování událostí a dat.
Objekt záložek
Objekt Záložka reprezentuje sousední oblasti v dokumentu s výchozími i koncovými pozicemi. Můžete použít záložky k označení místa v dokumentu nebo jako kontejner pro čínskou verzi dokumentu. Objekt záložek může obsahovat vkladací body nebo být tak velký jako celý dokument. Záložka má následující vlastnosti, které ji odlišují od objektů Range:
- Při navrhování můžete pojmenovat záložky.
- Objekt Záložka je uložen spolu s dokumentem, takže není smazán, když kód přestane běžet nebo je dokument uzavřen.
- Přístup k vlastnosti Zobrazit nastavením vlastnosti Zobrazit na nepravdivé nebo pravdivé.
- Visual Studio rozšiřuje objekt záložek tím, že poskytuje ovládání hostitele záložek. Ovládání hostu záložek se chová podobně jako nativní Bookmark, ale má také další možnosti vazby událostí a dat. Data můžete přiřadit k ovládací straně záložek na dokumentu stejným způsobem, jako data připojujete k ovládacím prvkům textového pole ve Windows Form.
Vytvořte doplněk Word VSTO
Po pochopení základních konceptů otevřete VS 2022 a vytvořte nový doplněk Word VSTO, jak je znázorněno na obrázku níže:
Vytvořte vizuální stuhu, jak je znázorněno na následujícím obrázku:
Dvojitým kliknutím Ribbon1.cs otevřete, odstraňte výchozí záložku a přetáhněte novou záložku, jak je uvedeno níže:
Přetáhněte skupinu a ovládací ovládání tlačítkem do záložky nové karty, jak je vidět níže:
Dvojitým kliknutím na nově vytvořené tlačítko vytvoříte klikací událost s následujícím kódem:
(Konec)
|