intervallo: applica la formattazione a una sottosezione nell'intervallo
-
05-07-2019 - |
Domanda
Sto scrivendo un pezzo di codice in c # per generare un rapporto nel documento word microsft.
- Ho una tabella di colonne wid 2.
-
Seleziono la seconda colonna per
oMainTable.Cell (currentRowNumber, 2) .Range
-
Ogni volta che devo scrivere qualcosa in quella cella, utilizzo il codice sopra con la combinazione della proprietà Text, InsertParagraph (), InsertAfter () etc etc
Ora diciamo che ho questo contenuto:
Alcuni contenuti di esempio Alcuni esempi contenuto Alcuni contenuti di esempio Alcuni contenuto di esempio Alcuni contenuti di esempio Alcuni contenuti di esempio Alcuni esempi contenuti.
New Paragraph Some sample content Some sample content Some sample
contenuto Alcuni contenuti di esempio Alcuni contenuto di esempio Alcuni contenuti di esempio Alcuni contenuti di esempio
Some Title1 New Paragraph Some sample content Some sample content Some sample
contenuto Alcuni contenuti di esempio Alcuni contenuto di esempio Alcuni contenuti di esempio Alcuni contenuti di esempio
Some Title1
contenuto Alcuni contenuti di esempio Alcuni contenuto di esempio Alcuni contenuti di esempio Alcuni contenuti di esempio
<*>
Voglio applicare il corsivo sottolineato e grassetto a someTitle1 e someTitle2 in modo che non si applichino all'intero intervallo; e rimanere limitato a queste due sole righe di testo.
Qualsiasi aiuto?
Grazie
Soluzione
Lasciami prima rilasciare una dichiarazione di non responsabilità ;-) " ** La soluzione qui presentata è il risultato del mio approccio di successo e prova e del colpo alla testa ** "
object srchText="Text to be searched and formatted differently from the rest of the range";
oTable.Cell(countRow, 2).Range.Select();
var selectUpdateComment=oTable.Cell(countRow, 2).Range.Application.Selection;
selectUpdateComment.Find.Execute2007(ref srchText, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,ref missing, ref missing);
if(selectUpdateComment.Find.Found) {
selectUpdateComment.Font.Bold=1;
selectUpdateComment.Font.Underline=WdUnderline.wdUnderlineSingle;
}
Lo stavo facendo in un ciclo quindi ogni volta che dovevo fare Range.Select, altrimenti non avrei ottenuto la selezione giusta.
ti suggeriamo approcci migliori ..