Egyéni Xml-részhez leképezve táblázat ismétlődő szakasz létrehozása
Ez az oktatóanyag bemutatja, hogyan hozhat létre ismétlődő szakaszt egy Word-dokumentum egyéni Xml-részéhez leképezve az Aspose.Words for .NET használatával. Az ismétlődő szakasz lehetővé teszi sorok dinamikus hozzáadását az Egyéni Xml-részben tárolt XML-adatok alapján.
Előfeltételek
Az oktatóanyag követéséhez a következőkre van szükség:
- Aspose.Words for .NET könyvtár telepítve.
- C# és Word dokumentumokkal végzett szövegszerkesztési alapismeretek.
1. lépés: Állítsa be a dokumentumkönyvtárat
Kezdje a dokumentumkönyvtár elérési útjának beállításával. Cserélje ki"YOUR DOCUMENT DIRECTORY"
annak a könyvtárnak a tényleges elérési útjával, ahová a dokumentumot menteni szeretné.
string dataDir = "YOUR DOCUMENT DIRECTORY";
2. lépés: Hozzon létre egy dokumentumot és a DocumentBuildert
Hozzon létre egy új példányt aDocument
osztály és aDocumentBuilder
a dokumentum tartalmának felépítéséhez.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
3. lépés: Adjon hozzá egyéni XML-adatokat egy CustomXmlPart-hoz
Hozzon létre egyCustomXmlPart
és egyéni XML-adatokat adjon hozzá. Ebben a példában egy XML-karakterláncot hozunk létre, amely könyvek gyűjteményét képviseli a címükkel és szerzőikkel.
CustomXmlPart xmlPart = doc.CustomXmlParts.Add("Books",
"<books><book><title>Everyday Italian</title><author>Giada De Laurentiis</author></book>" +
"<book><title>Harry Potter</title><author>J K. Rowling</author></book>" +
"<book><title>Learning XML</title><author>Erik T. Ray</author></book></books>");
4. lépés: Hozzon létre egy táblázatot és táblázatszerkezetet
Kezdje el a táblázat létrehozását aStartTable
módszere aDocumentBuilder
. Adja hozzá a táblázat celláit és tartalmát aInsertCell
ésWrite
mód.
Table table = builder.StartTable();
builder.InsertCell();
builder.Write("Title");
builder.InsertCell();
builder.Write("Author");
builder.EndRow();
builder.EndTable();
5. lépés: Hozzon létre egy egyéni XML-re leképezett Ismétlődő szakaszt
Hozzon létre egyStructuredDocumentTag
val velSdtType.RepeatingSection
az ismétlődő szakasz ábrázolására. Állítsa be az ismétlődő szakasz XML-leképezését aSetMapping
módszere aXmlMapping
ingatlan. Ebben a példában leképezzük az ismétlődő szakaszt/books[1]/book
.
StructuredDocumentTag repeatingSectionSdt =
new StructuredDocumentTag(doc, SdtType.RepeatingSection, MarkupLevel.Row);
repeatingSectionSdt.XmlMapping.SetMapping(xmlPart, "/books[1]/book", "");
table.AppendChild(repeatingSectionSdt);
6. lépés: Hozza létre az Ismétlődő szakasz elemet, és adja hozzá a cellákat
Hozzon létre egyStructuredDocumentTag
val velSdtType.RepeatingSectionItem
hogy képviselje az ismétlődő szakaszelemet. Gyermekként fűzze hozzá az ismétlődő részhez.
StructuredDocumentTag repeatingSectionItemSdt =
new StructuredDocumentTag(doc, SdtType.RepeatingSectionItem, MarkupLevel.Row);
repeatingSectionSdt.AppendChild(repeatingSectionItemSdt);
Hozzon létre egyRow
hogy az ismétlődő szakasz minden elemét képviselje, és hozzáfűzze az ismétlődő szakaszelemhez.
Row row = new Row(doc);
repeatingSectionItemSdt.AppendChild(row);
7. lépés: Adjon hozzá tartalomvezérlőket az Ismétlés szakaszhoz
TeremtStructuredDocumentTag
tárgyakkalSdtType.PlainText
a cím és a szerző tartalomvezérlőinek megjelenítésére. Állítsa be az XML-leképezést minden tartalomvezérlőhöz a segítségévelSetMapping
módszere aXmlMapping
ingatlan. Ebben a példában a címvezérlőt a következőre rendeljük/books[1]/book[1]/title[1]
és a szerző vezérli/books[1]/book[1]/author[1]
.
StructuredDocumentTag titleSdt =
new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Cell);
titleSdt.XmlMapping.SetMapping(xmlPart, "/books[1]/book[1]/title[1]", "");
row.AppendChild(titleSdt);
StructuredDocumentTag authorSdt =
new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Cell);
authorSdt.XmlMapping.SetMapping(xmlPart, "/books[1]/book[1]/author[1]", "");
row.AppendChild(authorSdt);
8. lépés: Mentse el a dokumentumot
Mentse el a módosított dokumentumot a megadott könyvtárba aSave
módszer. Adja meg a kívánt fájlnevet a megfelelő fájlkiterjesztéssel. Ebben a példában a dokumentumot “WorkingWithSdt.CreatingTableRepeatingSectionMappedToCustomXmlPart.docx” néven mentjük.
doc.Save(dataDir + "WorkingWithSdt.CreatingTableRepeatingSectionMappedToCustomXmlPart.docx");
Példa forráskódra az Aspose.Words for .NET használatával táblázatismétlő szakasz létrehozásához egyéni Xml-részhez leképezve
// A dokumentumkönyvtár elérési útja
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
CustomXmlPart xmlPart = doc.CustomXmlParts.Add("Books",
"<books><book><title>Everyday Italian</title><author>Giada De Laurentiis</author></book>" +
"<book><title>Harry Potter</title><author>J K. Rowling</author></book>" +
"<book><title>Learning XML</title><author>Erik T. Ray</author></book></books>");
Table table = builder.StartTable();
builder.InsertCell();
builder.Write("Title");
builder.InsertCell();
builder.Write("Author");
builder.EndRow();
builder.EndTable();
StructuredDocumentTag repeatingSectionSdt =
new StructuredDocumentTag(doc, SdtType.RepeatingSection, MarkupLevel.Row);
repeatingSectionSdt.XmlMapping.SetMapping(xmlPart, "/books[1]/book", "");
table.AppendChild(repeatingSectionSdt);
StructuredDocumentTag repeatingSectionItemSdt =
new StructuredDocumentTag(doc, SdtType.RepeatingSectionItem, MarkupLevel.Row);
repeatingSectionSdt.AppendChild(repeatingSectionItemSdt);
Row row = new Row(doc);
repeatingSectionItemSdt.AppendChild(row);
StructuredDocumentTag titleSdt =
new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Cell);
titleSdt.XmlMapping.SetMapping(xmlPart, "/books[1]/book[1]/title[1]", "");
row.AppendChild(titleSdt);
StructuredDocumentTag authorSdt =
new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Cell);
authorSdt.XmlMapping.SetMapping(xmlPart, "/books[1]/book[1]/author[1]", "");
row.AppendChild(authorSdt);
doc.Save(dataDir + "WorkingWithSdt.CreatingTableRepeatingSectionMappedToCustomXmlPart.docx");
Ez az! Az Aspose.Words for .NET segítségével sikeresen létrehozott egy táblázatot, amely ismétlődő szakaszt tartalmaz a Word-dokumentum CustomXmlPart-részére leképezve.