Dieser Artikel beschreibt einige der Merkwürdigkeiten über diese Platzhalter in das Word-Objektmodell.
PlaceholderText
ist ein Objekt, nicht im Text
Ein ContentControl Objekt hat eine PlaceholderText
Eigentum. Sie würden für das Denken wäre es ein String zurück vergeben werden. Aber Sie würden falsch sein! Ein Wort inhaltlicher Kontrolle zu
.PlaceholderText
ist ein BuildingBlock Objekt. Um den Platzhaltertext einzustellen, müssen Sie etwas wie:
MyContentControl.SetPlaceholderText Text: = "Klicken Sie hier und geben Sie den Titel des Berichts"Oder können Sie den Platzhaltertext, um auf einen Bereich oder ein bestehendes Gebäude Blocks verweisen.
Um den Platzhaltertext lesen, verwenden Sie die Eigenschaft Value.:
MsgBox MyContentControl.PlaceholderText.Value
Die PlaceholderText
Objekt ist anfällig für Verschwinden
Sie können nicht auf der Graf
PlaceholderText
Objekt zur Verfügung stehen. Es kommt häufig verschwindet. So wickeln Sie alle Verweise auf die .PlaceholderText
Objekt in irgendeiner Fehlerprüfung. Something like this: Dim cc Als ContentControl 'Angenommen es gibt mindestens einen Inhalt im Dokument Set c = ActiveDocument.ContentControls (1) 'Stellen Sie den Platzhaltertext If Not cc.PlaceholderText Is Nothing Then cc.SetPlaceholderText Text: = "My Text hier" End If
Wort oft nicht wissen, ob ein inhaltlicher Kontrolle zeigt seine Platzhaltertext
Laut Microsoft-Dokumentation, die.ShowingPlaceholderText
Immobilie Gibt einen Boolean, ob der Platzhaltertext für den Inhalt Steuerelement angezeigt wird anzeigt. Read-only.Meine Erfahrung ist, dass der Rückgabewert für
.ShowingPlaceholderText
falschen etwa die Hälfte der Zeit ist. Oder ist es richtig, etwa die Hälfte der Zeit.
Manchmal wird das Dokument anzuzeigen den Platzhaltertext, aber
Sie können einfach nicht auf sie verlassen. So, um zu bestimmen, ob das Dokument zeigt den Platzhaltertext, vergleichen Sie die .ShowingPlaceholderText
wird dies leugnen. Manchmal .ShowingPlaceholderText
wird behaupten, dass das Dokument zeigt den Platzhaltertext, aber es ist nicht. .PlaceholderText.Value
mit dem ContentControl.Range.Text
.
Allerdings kann man nicht vergleichen Sie den Text des Bildes mit der Platzhalter das Bild. So scheint es nicht möglich, in das Objekt-Modell, ob ein Bild inhaltlicher Kontrolle zeigt die Platzhalter bestimmen.
Einige inhaltlicher Kontrolle kann eine PlaceholderText
Objekt, aber kein Platzhaltertext
Image-Steuerelemente, Gruppe Kontrollen und (in Word 2010) Kontrollkästchen-Steuerelemente haben eine PlaceholderText
Objekt, aber nie einen .Value
, vielleicht aus offensichtlichen Gründen. Seien Sie vorsichtig, dies, wenn Sie durch alle Inhalte Steuerelemente im Dokument Radfahren sind. Das .Value
Eigenschaft auf ein Bild angewendet, Gruppe oder Checkbox inhaltlicher
Kontrolle einen Fehler zurückgibt (91: "Objektvariable oder With-Block
Variable nicht gesetzt ') egal, was die inhaltliche Kontrolle ist in dem
Dokument angezeigt wird. Word nicht korrekt berichten Stil von Platzhaltertext entweder im Objektmodell oder in der Benutzeroberfläche verwendet
Standardmäßig zeigt Word Platzhaltertext mit dem eingebauten Placehoder Text Stil. Sie können diese Art, wie Sie können alle integrierten Absatz-Stil. Das heißt, können Sie ändern den Stil zu machen, grün oder rosa oder unterstrichen oder was auch immer.Sie können eine andere Absatzvorlage der Platzhaltertext (speziell, muss eine sogenannte verbunden Absatzformat sein) gelten, oder Sie können direkte Formatierung anzuwenden.
Was ich nicht tun kann, ist zu finden jede mögliche Weise zu bestimmen, was Stil Platzhaltertext angewendet wurde.
Und deshalb können wir nicht eine Routine zu "säubern" Inhalte in einem
Dokument durch erneutes Auftragen Platzhaltertext zum Inhalt Kontrollen.
Keine Kommentare:
Kommentar veröffentlichen