Metoda ApplicationFactory.HasVstoObject —
Zwraca wartość, która wskazuje, czy Microsoft.Office.Tools.Word.Document hosta element został utworzony dla obiektu określonego dokumentu macierzystego.
Przestrzeń nazw: Microsoft.Office.Tools.Word
Zestawy: Microsoft.Office.Tools.Word (w Microsoft.Office.Tools.Word.dll)
Microsoft.Office.Tools.Word.v4.0.Utilities (w Microsoft.Office.Tools.Word.v4.0.Utilities.dll)
Składnia
'Deklaracja
Function HasVstoObject ( _
document As _Document _
) As Boolean
bool HasVstoObject(
_Document document
)
Parametry
- document
Typ: Microsoft.Office.Interop.Word._Document
Obiekt dokumentu macierzystego do testowania.Ten parametr jest typu Microsoft.Office.Interop.Word._Document, zazwyczaj przekazać Microsoft.Office.Interop.Word.Document obiektu do tej metody.
Wartość zwracana
Typ: System.Boolean
true Jeśli Microsoft.Office.Tools.Word.Document hosta element został utworzony dla określonego Microsoft.Office.Interop.Word.Document zgłasza zastrzeżeń; w przeciwnym razie false.
Uwagi
Tę metodę można wywołać w poziomie aplikacji dodatek do sprawdzania istnienia zarządzane formanty, które chcesz utrwalić przed zamknięciem lub zapisanie dokumentu programu Word.Przykładowy demonstruje, jak utrzymują się formantów w dokumencie programu Word, zobacz Word Add-In Dynamic Controls Sample.
[!UWAGA]
document Parametr jest typu Microsoft.Office.Interop.Word._Document, który jest interfejsem nadrzędnej Microsoft.Office.Interop.Word.Document.W związku z tym, ta metoda może akceptować obiekty obu typów: Microsoft.Office.Interop.Word._Document i Microsoft.Office.Interop.Word.Document.Zazwyczaj, gdy odwołanie do dokumentu programu Word, możesz wykorzystać Microsoft.Office.Interop.Word.Document.
Przykłady
Poniższy przykład kodu sprawdza, czy bieżący dokument ma element skojarzony hosta, a jeśli tak, to pobiera element hosta.Jeśli istnieją formanty zarządzane w dokumencie, przykład wyświetla komunikat ostrzegawczy, informujący użytkownika, że zarządzane formanty nie zostaną utrwalone podczas zapisywania dokumentu.W tym przykładzie kodu użyto programu obsługi zdarzeń z DocumentBeforeSave zdarzenie, aby sprawdzać.Aby użyć tego kodu, uruchomić go z ThisAddIn klasy w Word dodać w projekt, który jest przeznaczony dla .NET Framework 4 lub .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);
}
}
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Przy użyciu bibliotek z częściowo zaufanego kodu..
Zobacz też
Informacje
Przestrzeń nazw Microsoft.Office.Tools.Word