Sdílet prostřednictvím


ApplicationFactory.HasVstoObject – metoda

Vrátí hodnotu, která označuje, zda Microsoft.Office.Tools.Word.Document byla vytvořena položka hostitele pro zadaný dokument nativní objekt.

Obor názvů:  Microsoft.Office.Tools.Word
Sestavení:   Microsoft.Office.Tools.Word (v Microsoft.Office.Tools.Word.dll)
  Microsoft.Office.Tools.Word.v4.0.Utilities (v Microsoft.Office.Tools.Word.v4.0.Utilities.dll)

Syntaxe

'Deklarace
Function HasVstoObject ( _
    document As _Document _
) As Boolean
bool HasVstoObject(
    _Document document
)

Parametry

Vrácená hodnota

Typ: System.Boolean
true Pokud Microsoft.Office.Tools.Word.Document byla vytvořena položka hostitele pro zadaný Microsoft.Office.Interop.Word.Document objektu; jinak false.

Poznámky

Tuto metodu lze volat v úrovni aplikace doplňku aplikace test existence spravovaný ovládací prvky, které chcete uchovat před zavřením nebo uložení dokumentu aplikace Word.Příklad, který demonstruje přetrvávají ovládací prvky v dokumentu aplikace Word, naleznete v Word Add-In Dynamic Controls Sample.

[!POZNÁMKA]

document Parametr je typu Microsoft.Office.Interop.Word._Document, která je nadřazená rozhraní Microsoft.Office.Interop.Word.Document.Tato metoda proto přijmout obou typů objektů: Microsoft.Office.Interop.Word._Document a Microsoft.Office.Interop.Word.Document.Obvykle při odkazu dokument aplikace Word slouží Microsoft.Office.Interop.Word.Document.

Příklady

Následující příklad kódu zkontroluje, zda aktuální dokument obsahuje položku hostitele přidružený, a pokud ano, získá položku hostitele.Pokud spravované ovládací prvky v dokumentu, v příkladu se zobrazí upozornění informující uživatele, že spravované ovládací prvky nebudou trvalé při uložení dokumentu.Tento příklad kódu používá obslužné rutiny události DocumentBeforeSave události k provedení kontroly.Chcete-li použít tento kód, spusťte jej z ThisAddIn třídy v aplikaci Word přidat do projektu, který zaměřuje .NET Framework 4 nebo .NET Framework 4.5.

Private Sub Application_DocumentBeforeSave( _
    ByVal Doc As Microsoft.Office.Interop.Word.Document, _
    ByRef SaveAsUI As Boolean, _
    ByRef Cancel As Boolean) Handles Application.DocumentBeforeSave

    If Globals.Factory.HasVstoObject(Doc) = True Then
        Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Doc)
        If vstoDoc.Controls.Count > 0 Then
            System.Windows.Forms.MessageBox.Show( _
                "The VSTO controls are not persisted when you save this document.", _
                "Controls Persistence", _
                System.Windows.Forms.MessageBoxButtons.OK, _
                System.Windows.Forms.MessageBoxIcon.Warning)
        End If
    End If
End Sub
void Application_DocumentBeforeSave(
    Microsoft.Office.Interop.Word.Document Doc, ref bool SaveAsUI, 
    ref bool Cancel)
{
    if (Globals.Factory.HasVstoObject(Doc) == true)
    {
        Document vstoDoc = Globals.Factory.GetVstoObject(Doc);
        if (vstoDoc.Controls.Count > 0)
        {
            System.Windows.Forms.MessageBox.Show(
                "The VSTO controls are not persisted when you save this document.",
                "Controls Persistence",
                System.Windows.Forms.MessageBoxButtons.OK,
                System.Windows.Forms.MessageBoxIcon.Warning);
        }
    }
}

Zabezpečení rozhraní .NET Framework

Viz také

Referenční dokumentace

ApplicationFactory Rozhraní

Microsoft.Office.Tools.Word – obor názvů

Další zdroje

Rozšíření dokumentů aplikace Word a sešitů aplikace Excel v doplňcích na úrovni aplikace za běhu

Programování přizpůsobení na úrovni dokumentu

Word Add-In Dynamic Controls Sample