Comment

Comment class

Rappresenta un contenitore per il testo di un commento.

Per saperne di più, visita ilLavorare con i commenti articolo di documentazione.

public sealed class Comment : InlineStory

Costruttori

NomeDescrizione
Comment(DocumentBase)Inizializza una nuova istanza diComment classe.
Comment(DocumentBase, string, string, DateTime)Inizializza una nuova istanza diComment classe.

Proprietà

NomeDescrizione
Ancestor { get; }Restituisce il genitoreComment oggetto. ritornanullo per commenti di primo livello.
Author { get; set; }Restituisce o imposta il nome dell’autore per un commento.
Count { get; }Ottiene il numero di figli immediati di questo nodo.
CustomNodeId { get; set; }Specifica l’identificatore del nodo personalizzato.
DateTime { get; set; }Ottiene la data e l’ora in cui è stato creato il commento.
virtual Document { get; }Ottiene il documento a cui appartiene questo nodo.
Done { get; set; }Ottiene o imposta un flag che indica che il commento è stato contrassegnato come completato.
FirstChild { get; }Ottiene il primo figlio del nodo.
FirstParagraph { get; }Ottiene il primo paragrafo della storia.
Font { get; }Fornisce l’accesso alla formattazione del carattere del carattere di ancoraggio di questo oggetto.
HasChildNodes { get; }RestituisceVERO se questo nodo ha nodi figli.
Id { get; }Ottiene l’identificatore del commento.
Initial { get; set; }Restituisce o imposta le iniziali dell’utente associato ad uno specifico commento.
override IsComposite { get; }RestituisceVERO poiché questo nodo può avere nodi figli.
IsDeleteRevision { get; }Restituisce vero se questo oggetto è stato eliminato in Microsoft Word mentre era abilitato il rilevamento delle modifiche.
IsInsertRevision { get; }Restituisce vero se questo oggetto è stato inserito in Microsoft Word mentre il rilevamento delle modifiche era abilitato.
IsMoveFromRevision { get; }RestituisceVERO se questo oggetto è stato spostato (eliminato) in Microsoft Word mentre il rilevamento delle modifiche era abilitato.
IsMoveToRevision { get; }RestituisceVERO se questo oggetto è stato spostato (inserito) in Microsoft Word mentre il rilevamento delle modifiche era abilitato.
LastChild { get; }Ottiene l’ultimo figlio del nodo.
LastParagraph { get; }Ottiene l’ultimo paragrafo della storia.
NextSibling { get; }Ottiene il nodo immediatamente successivo a questo nodo.
override NodeType { get; }RestituisceComment .
Paragraphs { get; }Ottiene una raccolta di paragrafi che sono figli immediati della storia.
ParentNode { get; }Ottiene il genitore immediato di questo nodo.
ParentParagraph { get; }Recupera il genitoreParagraph di questo nodo.
PreviousSibling { get; }Ottiene il nodo immediatamente precedente questo nodo.
Range { get; }Restituisce aRange oggetto che rappresenta la porzione di documento contenuta in questo nodo.
Replies { get; }Restituisce una raccolta diComment oggetti che sono figli immediati del commento specificato.
override StoryType { get; }RestituisceComments .
Tables { get; }Ottiene una raccolta di tabelle che sono figli immediati della storia.

Metodi

NomeDescrizione
override Accept(DocumentVisitor)Accetta un visitatore.
AddReply(string, string, DateTime, string)Aggiunge una risposta a questo commento.
AppendChild(Node)Aggiunge il nodo specificato alla fine dell’elenco dei nodi secondari per questo nodo.
Clone(bool)Crea un duplicato del nodo.
CreateNavigator()Crea un navigatore che può essere utilizzato per attraversare e leggere i nodi.
EnsureMinimum()Se l’ultimo figlio non è un paragrafo, crea e aggiunge un paragrafo vuoto.
GetAncestor(NodeType)Ottiene il primo antenato dell’oggetto specificatoNodeType .
GetAncestor(Type)Ottiene il primo antenato del tipo di oggetto specificato.
GetChild(NodeType, int, bool)Restituisce un Nesimo nodo figlio che corrisponde al tipo specificato.
GetChildNodes(NodeType, bool)Restituisce una raccolta attiva di nodi secondari che corrispondono al tipo specificato.
GetEnumerator()Fornisce il supporto per l’iterazione di ogni stile sui nodi figlio di questo nodo.
override GetText()Ottiene il testo di questo nodo e di tutti i suoi figli.
IndexOf(Node)Restituisce l’indice del nodo figlio specificato nell’array di nodi figlio.
InsertAfter(NodeNode)Inserisce il nodo specificato immediatamente dopo il nodo di riferimento specificato.
InsertBefore(NodeNode)Inserisce il nodo specificato immediatamente prima del nodo di riferimento specificato.
NextPreOrder(Node)Ottiene il nodo successivo in base all’algoritmo di attraversamento dell’albero di preordine.
PrependChild(Node)Aggiunge il nodo specificato all’inizio dell’elenco dei nodi secondari per questo nodo.
PreviousPreOrder(Node)Ottiene il nodo precedente in base all’algoritmo di attraversamento dell’albero di preordine.
Remove()Si rimuove dal genitore.
RemoveAllChildren()Rimuove tutti i nodi figlio del nodo corrente.
RemoveAllReplies()Rimuove tutte le risposte a questo commento.
RemoveChild(Node)Rimuove il nodo figlio specificato.
RemoveReply(Comment)Rimuove la risposta specificata a questo commento.
RemoveSmartTags()Rimuove tuttoSmartTagnodi discendenti del nodo corrente.
SelectNodes(string)Seleziona un elenco di nodi che corrispondono all’espressione XPath.
SelectSingleNode(string)Seleziona il primoNode che corrisponde all’espressione XPath.
SetText(string)Questo è un metodo comodo che consente di impostare facilmente il testo del commento.
ToString(SaveFormat)Esporta il contenuto del nodo in una stringa nel formato specificato.
ToString(SaveOptions)Esporta il contenuto del nodo in una stringa utilizzando le opzioni di salvataggio specificate.

Osservazioni

Un commento è un’annotazione ancorata a una regione di testo o a una posizione nel testo. Un commento può contenere una quantità arbitraria di contenuto a livello di blocco.

Se unComment oggetto si verifica da solo, il commento è ancorato alla posizione delComment oggetto.

Per ancorare un commento ad una regione di testo sono necessari tre oggetti:Comment , CommentRangeStart ECommentRangeEnd . Tutti e tre gli oggetti devono condividere lo stesso Id valore.

Comment è un nodo a livello inline e può essere solo figlio diParagraph.

Comment può contenereParagraph ETable nodi figli.

Esempi

Mostra come aggiungere un commento a un paragrafo.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Write("Hello world!");

Comment comment = new Comment(doc, "John Doe", "JD", DateTime.Today);
builder.CurrentParagraph.AppendChild(comment);
builder.MoveTo(comment.AppendChild(new Paragraph(doc)));
builder.Write("Comment text.");

Assert.AreEqual(DateTime.Today, comment.DateTime);

 // In Microsoft Word, possiamo fare clic con il pulsante destro del mouse su questo commento nel corpo del documento per modificarlo o rispondere.
doc.Save(ArtifactsDir + "InlineStory.AddComment.docx");

Mostra come aggiungere un commento a un documento e quindi rispondere.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Comment comment = new Comment(doc, "John Doe", "J.D.", DateTime.Now);
comment.SetText("My comment.");

// Posiziona il commento in un nodo nel corpo del documento.
// Questo commento verrà visualizzato nella posizione del suo paragrafo,
// fuori dal margine destro della pagina e con una linea tratteggiata che lo collega al paragrafo.
builder.CurrentParagraph.AppendChild(comment);

// Aggiunge una risposta, che verrà visualizzata sotto il commento principale.
comment.AddReply("Joe Bloggs", "J.B.", DateTime.Now, "New reply");

// Commenti e risposte sono entrambi nodi Commento.
Assert.AreEqual(2, doc.GetChildNodes(NodeType.Comment, true).Count);

// I commenti che non rispondono ad altri commenti sono di "livello superiore". Non hanno commenti sugli antenati.
Assert.Null(comment.Ancestor);

// Le risposte hanno un commento di livello superiore antenato.
Assert.AreEqual(comment, comment.Replies[0].Ancestor);

doc.Save(ArtifactsDir + "Comment.AddCommentWithReply.docx");

Guarda anche