Reemplace la etiqueta con texto en un cuadro de texto dentro de la hoja de trabajo
Contents
[
Hide
]
Posibles escenarios de uso
Los cuadros de texto pueden tener etiquetas que se pueden reemplazar con algún texto en tiempo de ejecución para configurarlos de acuerdo con el requisito. Las etiquetas pueden ser algunas etiquetas encerradas entre paréntesis angulares ‘<’ and ‘>. Puede haber múltiples etiquetas dentro de un solo cuadro de texto.
Código de muestra
El siguiente código de muestra reemplaza las etiquetas TAG_1 y etiqueta_2 con algún texto dicen ‘ys’ y ‘1’. El archivo de muestra para probar el siguiente código se puede descargar desde el siguiente enlace:
ejemploReplaceTagWithText.xlsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
Workbook wb = new Workbook(sourceDir + "sampleReplaceTagWithText.xlsx"); | |
string tag = "TAG_2$TAG_1"; | |
string replace = "1$ys"; | |
for (int i = 0; i < tag.Split('$').Length; i++) | |
{ | |
sheetReplace(wb, "<" + tag.Split('$')[i] + ">", replace.Split('$')[i]); | |
} | |
PdfSaveOptions opts = new PdfSaveOptions(); | |
wb.Save(outputDir + "outputReplaceTagWithText.pdf", opts); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
public static void sheetReplace(Workbook workbook, string sFind, string sReplace) | |
{ | |
string finding = sFind; | |
foreach (Worksheet sheet in workbook.Worksheets) | |
{ | |
sheet.Replace(finding, sReplace); | |
for (int j = 0; j < 3; j++) | |
{ | |
if (sheet.PageSetup.GetHeader(j) != null) | |
sheet.PageSetup.SetHeader(j, sheet.PageSetup.GetHeader(j).Replace(finding, sReplace)); | |
if (sheet.PageSetup.GetFooter(j) != null) | |
sheet.PageSetup.SetFooter(j, sheet.PageSetup.GetFooter(j).Replace(finding, sReplace)); | |
} | |
} | |
foreach (Worksheet sheet in workbook.Worksheets) | |
{ | |
sFind = sFind.Replace("<", "<"); | |
sFind = sFind.Replace(">", ">"); | |
foreach (Aspose.Cells.Drawing.TextBox mytextbox in sheet.TextBoxes) | |
{ | |
if (mytextbox.HtmlText != null) | |
{ | |
if (mytextbox.HtmlText.IndexOf(sFind) >= 0) | |
{ | |
mytextbox.HtmlText = mytextbox.HtmlText.Replace(sFind, sReplace); | |
} | |
} | |
} | |
} | |
} |