Class TableFieldCollection
Contents
[
Hide
]TableFieldCollection class
Contains a list of TableField
objects. Implements IList<TableField> interface.
public class TableFieldCollection : IList<TableField>
Properties
Name | Description |
---|---|
Count { get; } | Gets the number of elements contained in this collection. |
IsReadOnly { get; } | Gets a value indicating whether this collection is read-only; otherwise, false. |
Item { get; set; } | Returns or sets the element at the specified index. |
Methods
Name | Description |
---|---|
Add(TableField) | Adds the specified item to this collection. |
Clear() | Removes all items from this collection. |
Contains(TableField) | Returns true if the specified item is found in this collection; otherwise, false. |
CopyTo(TableField[], int) | Copies the elements of this collection to the specified array, starting at the specified array index. |
GetEnumerator() | Returns an enumerator for this collection. |
IndexOf(TableField) | Determines the index of the specified item in this collection. |
Insert(int, TableField) | Inserts the specified item at the specified index. |
Remove(TableField) | Removes the first occurrence of a specific object from this collection. |
RemoveAt(int) | Removes an item at the specified index. |
Examples
Shows how to work with table field collections.
var project = new Project(DataDir + "Project1.mpp");
foreach (var tbl in project.Tables)
{
Console.WriteLine("Table name: " + tbl.Name);
Console.WriteLine("Is collection of table fields read-only?: " + tbl.TableFields.IsReadOnly);
// iterate over table fields
Console.WriteLine("Print table fields of " + project.Get(Prj.Name) + " project.");
Console.WriteLine("Table count: " + tbl.TableFields.Count);
foreach (var fld in tbl.TableFields)
{
Console.WriteLine("Field Title: " + fld.Title);
Console.WriteLine("Field Field: " + fld.Field);
Console.WriteLine();
}
}
// add a new table field
var table = project.Tables.ToList()[0];
var field = new TableField();
field.Title = "New Table Field";
table.TableFields.Add(field);
var field2 = new TableField();
field2.Title = "New Table Field 2";
// insert a new field in the position
var idx = table.TableFields.IndexOf(field);
table.TableFields.Insert(idx, field2);
// lets edit the new table field by using index access
table.TableFields[idx].WrapHeader = true;
Console.WriteLine("The collection contains the new table field?: " + table.TableFields.Contains(field));
// lately we can remove the field
table.TableFields.RemoveAt(idx);
// one can clear the collection in two ways
if (deleteOneByOne)
{
// copy table fields into the array and delete them one by one
var tableFields = new TableField[table.TableFields.Count];
table.TableFields.CopyTo(tableFields, 0);
foreach (var fld in tableFields)
{
table.TableFields.Remove(fld);
}
}
else
{
// or one can clear a table field collection completely
table.TableFields.Clear();
}
See Also
- class TableField
- namespace Aspose.Tasks
- assembly Aspose.Tasks