TXTextControl.TableColumnCollection Class

An instance of the TableColumnCollection class contains all columns of a table in a Text Control document represented through objects of the type TableColumn. It can be obtained with the Table.Columns property. The TableColumnCollection class implements the IEnumerable and the ICollection interfaces.

Syntax

[C#]
public sealed class TableColumnCollection: TablePartCollection
[Visual Basic]
Public NotInheritable Class TableColumnCollection
  Inherits TablePartCollection

Properties

Property Description
CanAdd Gets a value indicating whether a new column can be inserted at the current input position.
CanRemove Gets a value indicating whether table columns can be removed.
Count Gets the number of elements contained in the collection. (Inherited from TablePartCollection.)
IsSynchronized Returns true if the collection is designed to be thread safe, otherwise, it returns false. (Inherited from TablePartCollection.)
SyncRoot Gets an object that can be used to synchronize access to the collection. (Inherited from TablePartCollection.)

Methods

Method Description
Add Adds a new table column at the current text input position.
CopyTo Copies the elements of the collection to an array, starting at a particular index.
GetEnumerator Returns an enumerator that can be used to iterate through the collection. (Inherited from TablePartCollection.)
GetItem Overloaded. Gets a particular table column from the collection.
Remove Removes the table column at the current text input position or all selected table columns when a text selection exists.

Example

The following example shows how to use the table column collection.

[C#]
int myLastCol = myTable.Columns.Count;
TXTextControl.TableColumn myCol = myTable.Columns.GetItem(myLastCol);
TXTextControl.TableCell myCell = myTable.Cells.GetItem(1, myLastCol);
int myNewWidth = (int)(myCol.Width / 2);

textControl1.InputPosition = new TXTextControl.InputPosition(myCell.Start - 1);

if (myTable.Columns.CanAdd)
{
    myCol.Width = myNewWidth;
    myTable.Columns.Add(TXTextControl.TableAddPosition.After);
}
[Visual Basic]
Dim MyLastCol As Integer = MyTable.Columns.Count
Dim MyCol As TXTextControl.TableColumn = MyTable.Columns.GetItem(MyLastCol)
Dim MyCell As TXTextControl.TableCell = MyTable.Cells.GetItem(1, MyLastCol)
Dim MyNewWidth As Integer = CInt(MyCol.Width / 2)

TextControl1.InputPosition = New TXTextControl.InputPosition(MyCell.Start - 1)

If MyTable.Columns.CanAdd Then
    MyCol.Width = MyNewWidth
    MyTable.Columns.Add(TXTextControl.TableAddPosition.After)
End If

See Also