How to detect the borders of cells in a table
using C# and VB.NET.


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

Complete code

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 });
        }
    }
}

Download.

        
            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

          

Download.


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:



Questions and suggestions from you are always welcome!

We are developing .Net components since 2002. We know PDF, DOCX, RTF, HTML, XLSX and Images formats. If you need any assistance with creating, modifying or converting documents in various formats, we can help you. We will write any code example for you absolutely free.