Այս կարճ ձեռնարկը նկարագրում է, թե ինչպես պետք է միավորել բջիջները Word-ում՝ օգտագործելով C#: Այն ունի մանրամասներ՝ IDE-ն կարգավորելու համար, քայլերի ցանկ, բջիջները համակցելու նախապես սահմանված ֆունկցիա և օրինակելի կոդը, որը ցույց է տալիս ինչպես միաձուլել աղյուսակները Word-ում՝ օգտագործելով C# այս նախապես սահմանված ֆունկցիայի օգնությամբ: Այս առաջադրանքն իրականացնելու համար որևէ այլ երրորդ կողմի գործիքի կարիք չկա:
Word աղյուսակում բջիջները միացնելու քայլեր C#-ով
- Սահմանեք, որ IDE-ն օգտագործի Aspose.Words for .NET՝ աղյուսակում բջիջները միավորելու համար
- Հայտարարեք նախապես սահմանված MergeCells մեթոդը ձեր հավելվածում օգտագործելու համար
- Բեռնել սկզբնաղբյուր Word ֆայլը մեկ կամ մի քանի աղյուսակ ունեցող Document օբյեկտի մեջ
- Բջիջների միաձուլման համար մուտք գործեք աղյուսակը բեռնված Word ֆայլում
- Մուտք գործեք նպատակային միաձուլման տիրույթի մեկնարկային cell
- Մուտք գործեք միաձուլման տիրույթի ավարտական բջիջ
- Կանչեք MergeCells() մեթոդը՝ տրամադրելով սկզբնական և ավարտվող բջիջները և պահպանեք փաստաթուղթը
Այս քայլերն օգնում են ինչպես միաձուլել Word-ի բջիջները՝ օգտագործելով C#: Ավելացրեք նախապես սահմանված մեթոդը ձեր նախագծում և կանչեք այն՝ տրամադրելով սկզբնական և ավարտվող բջիջը, որը ցանկանում եք միաձուլել: Այն կփոխի սկզբնաղբյուր ֆայլը, հետևաբար, դուք կարող եք պահպանել բեռնված Word ֆայլը մեկ այլ անունով՝ միավորված բջիջներով:
Կոդ՝ Word-ում բջիջները C#-ով միավորելու համար
using System; | |
using System.Drawing; | |
using Aspose.Words; | |
using Aspose.Words.Tables; | |
class Program | |
{ | |
static void MergeCells(Cell startCell, Cell endCell) | |
{ | |
Table parentTable = startCell.ParentRow.ParentTable; | |
// Find the start and end cell | |
Point startingCell = new Point(startCell.ParentRow.IndexOf(startCell), parentTable.IndexOf(startCell.ParentRow)); | |
Point endingCell = new Point(endCell.ParentRow.IndexOf(endCell), parentTable.IndexOf(endCell.ParentRow)); | |
// Create a range of cells | |
Rectangle mergeRange = new Rectangle(Math.Min(startingCell.X, endingCell.X),Math.Min(startingCell.Y, endingCell.Y), | |
Math.Abs(endingCell.X - startingCell.X) + 1, Math.Abs(endingCell.Y - startingCell.Y) + 1); | |
foreach (Row currentRow in parentTable.Rows) | |
{ | |
foreach (Cell currentCell in currentRow.Cells) | |
{ | |
Point currentPos = new Point(currentRow.IndexOf(currentCell), parentTable.IndexOf(currentRow)); | |
// Check if the current cell is inside the range | |
if (mergeRange.Contains(currentPos)) | |
{ | |
currentCell.CellFormat.HorizontalMerge = currentPos.X == mergeRange.X ? CellMerge.First : CellMerge.Previous; | |
currentCell.CellFormat.VerticalMerge = currentPos.Y == mergeRange.Y ? CellMerge.First : CellMerge.Previous; | |
} | |
} | |
} | |
} | |
static void Main(string[] args) | |
{ | |
License lic = new License(); | |
lic.SetLicense("license.lic"); | |
Document doc = new Document("Table.docx"); | |
Table table = doc.FirstSection.Body.Tables[0]; | |
// Define starting and ending cells | |
Cell cellStartRange = table.Rows[0].Cells[0]; | |
Cell cellEndRange = table.Rows[1].Cells[1]; | |
// Merge all the cells | |
MergeCells(cellStartRange, cellEndRange); | |
doc.Save("Output.docx"); | |
} | |
} |
Այս կոդը ցույց է տալիս ինչպես համատեղել աղյուսակները Word-ում՝ օգտագործելով C#: Մենք ավելացրել ենք նախապես սահմանված MergeCells մեթոդը դրա սահմանման հետ միասին, այնուհետև այն կանչել մեր հավելվածում, որտեղ պահանջվում է: Դուք կարող եք ընտրել բաժինը, այդ բաժնի աղյուսակների ցանկը և մուտք գործել նպատակային աղյուսակ՝ օգտագործելով դրա ինդեքսը՝ միաձուլման համար մեկնարկային և ավարտվող բջիջները ընտրելու համար: Դուք կարող եք կրկնել այս գործընթացը՝ միաձուլելու այնքան բջիջներ, որքան պահանջվում է:
Մենք սովորել ենք ինչպես միաձուլել բջիջները Microsoft Word-ում՝ օգտագործելով C#: Եթե ցանկանում եք միավորել Word-ի ամբողջական փաստաթղթերը, տես Ինչպես միաձուլել Word փաստաթղթերը C#-ի միջոցով-ի հոդվածը: