This code example shows how to find cells in the table.docx with borders of the same color.
Let's insert the text into cells with borders of the same color.
Download the resulting file: ResultDetectBorder.docx
using System;
using SautinSoft.Document;
using SautinSoft.Document.Tables;
namespace Example
{
class Program
{
static void Main(string[] args)
{
DetectBorders();
}
/// <summary>
/// Detect cell borders with the same color.
/// </summary>
/// <remarks>
/// Details: https://www.sautinsoft.com/products/document/help/net/developer-guide/from-customers-detect-borders-in-table-csharp-vb-net.php
/// </remarks>
private static void DetectBorders()
{
DocumentCore dc = DocumentCore.Load(@"..\..\example.docx");
foreach (TableCell itemTC in dc.GetChildElements(true, ElementType.TableCell))
{
SingleBorder sbLeft = itemTC.CellFormat.Borders[SingleBorderType.Left];
SingleBorder sbTop = itemTC.CellFormat.Borders[SingleBorderType.Top];
SingleBorder sbRight = itemTC.CellFormat.Borders[SingleBorderType.Right];
SingleBorder sbBottom = itemTC.CellFormat.Borders[SingleBorderType.Bottom];
if (sbLeft.Color == sbTop.Color && sbTop.Color == sbRight.Color && sbRight.Color == sbBottom.Color)
{
itemTC.Content.Start.Insert("This cell has the same border color.\r\n");
}
}
// Save our document into DOCX format.
string filePath = "ResultDetectBorder.docx";
dc.Save(filePath);
// Open the result for demonstration purposes.
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(filePath) { UseShellExecute = true });
}
}
}
Imports Microsoft.VisualBasic
Imports System
Imports SautinSoft.Document
Imports SautinSoft.Document.Tables
Namespace Example
Friend Class Program
Shared Sub Main(ByVal args() As String)
DetectBorders()
End Sub
''' <summary>
''' Detect cell borders with the same color.
''' </summary>
''' <remarks>
''' Details: https://www.sautinsoft.com/products/document/help/net/developer-guide/from-customers-detect-borders-in-table-csharp-vb-net.php
''' </remarks>
Private Shared Sub DetectBorders()
Dim dc As DocumentCore = DocumentCore.Load("..\example.docx")
For Each itemTC As TableCell In dc.GetChildElements(True, ElementType.TableCell)
Dim sbLeft As SingleBorder = itemTC.CellFormat.Borders(SingleBorderType.Left)
Dim sbTop As SingleBorder = itemTC.CellFormat.Borders(SingleBorderType.Top)
Dim sbRight As SingleBorder = itemTC.CellFormat.Borders(SingleBorderType.Right)
Dim sbBottom As SingleBorder = itemTC.CellFormat.Borders(SingleBorderType.Bottom)
If sbLeft.Color = sbTop.Color AndAlso sbTop.Color = sbRight.Color AndAlso sbRight.Color = sbBottom.Color Then
itemTC.Content.Start.Insert("This cell has the same border color." & vbCrLf)
End If
Next itemTC
' Save our document into DOCX format.
Dim filePath As String = "ResultDetectBorder.docx"
dc.Save(filePath)
' Open the result for demonstration purposes.
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(filePath) With {.UseShellExecute = True})
End Sub
End Class
End Namespace
If you need a new code example or have a question: email us at support@sautinsoft.com or ask at Online Chat (right-bottom corner of this page) or use the Form below: