Comment

Comment class

Rappresenta un contenitore per il testo di un commento.

public sealed class Comment : InlineStory

Costruttori

Nome Descrizione
Comment(DocumentBase) Inizializza una nuova istanza di Commento classe.
Comment(DocumentBase, string, string, DateTime) Inizializza una nuova istanza di Commento classe.

Proprietà

Nome Descrizione
Ancestor { get; } Restituisce l’oggetto Commento padre. Restituisce null per i commenti di primo livello.
Author { get; set; } Restituisce o imposta il nome dell’autore per un commento.
ChildNodes { get; } Ottiene tutti i nodi figlio immediati di questo nodo.
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 inserito il commento.
virtual Document { get; } Ottiene il documento a cui appartiene questo nodo.
Done { get; set; } Ottiene o imposta il 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 anchor di questo oggetto.
HasChildNodes { get; } Restituisce true se questo nodo ha nodi figlio.
Id { get; } Ottiene l’identificatore del commento.
Initial { get; set; } Restituisce o imposta le iniziali dell’utente associato a un commento specifico.
override IsComposite { get; } Restituisce true poiché questo nodo può avere nodi figlio.
IsDeleteRevision { get; } Restituisce true se questo oggetto è stato eliminato in Microsoft Word mentre era abilitato il rilevamento delle modifiche.
IsInsertRevision { get; } Restituisce true se questo oggetto è stato inserito in Microsoft Word mentre era abilitato il rilevamento delle modifiche.
IsMoveFromRevision { get; } Restituisce VERO se questo oggetto è stato spostato (eliminato) in Microsoft Word mentre era abilitato il rilevamento delle modifiche.
IsMoveToRevision { get; } Restituisce VERO se questo oggetto è stato spostato (inserito) in Microsoft Word mentre era abilitato il rilevamento delle modifiche.
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; } Restituisce NodeType.Comment .
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 a questo nodo.
Range { get; } Restituisce a Gamma oggetto che rappresenta la parte di un documento contenuta in questo nodo.
Replies { get; } Restituisce una raccolta diComment oggetti che sono figli immediati del commento specificato.
override StoryType { get; } Restituisce StoryType.Commenti .
Tables { get; } Ottiene una raccolta di tabelle che sono figli immediati della storia.

Metodi

Nome Descrizione
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 figlio per questo nodo.
Clone(bool) Crea un duplicato del nodo.
CreateNavigator() Riservato per l’uso del sistema. IXPathNavigable.
EnsureMinimum() Se l’ultimo figlio non è un paragrafo, crea e aggiunge un paragrafo vuoto.
GetAncestor(NodeType) Ottiene il primo predecessore dell’oggetto specificatoNodeType .
GetAncestor(Type) Ottiene il primo predecessore del tipo di oggetto specificato.
GetChild(NodeType, int, bool) Restituisce un ennesimo nodo figlio che corrisponde al tipo specificato.
GetChildNodes(NodeType, bool) Restituisce una raccolta live di nodi figlio che corrispondono al tipo specificato.
GetEnumerator() Fornisce supporto per ogni iterazione di 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 del nodo figlio.
InsertAfter(Node, Node) Inserisce il nodo specificato subito dopo il nodo di riferimento specificato.
InsertBefore(Node, Node) 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 figlio 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 tuttoSmartTag nodi discendenti del nodo corrente.
SelectNodes(string) Seleziona un elenco di nodi che corrispondono all’espressione XPath.
SelectSingleNode(string) Seleziona il primo nodo che corrisponde all’espressione XPath.
SetText(string) Questo è un metodo pratico che permette 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 un’area di testo oa una posizione nel testo. Un commento può contenere una quantità arbitraria di contenuto a livello di blocco.

Se unaComment l’oggetto si verifica da solo, il commento è ancorato a la posizione delComment oggetto.

Per ancorare un commento a un’area di testo sono necessari tre oggetti:Comment , CommentRangeStart eCommentRangeEnd Tutti e tre gli oggetti devono condividere lo stesso Id valore.

Comment è un nodo inline e può essere solo un 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 ad esso.

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 su un nodo nel corpo del documento.
// Questo commento apparirà nella posizione del suo paragrafo,
// al di fuori del margine destro della pagina e con una linea tratteggiata che lo collega al paragrafo.
builder.CurrentParagraph.AppendChild(comment);

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

// Commenti e risposte sono entrambi nodi Commenti.
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 dell'antenato.
Assert.AreEqual(comment, comment.Replies[0].Ancestor);

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

Guarda anche