Search Results for

    Show / Hide Table of Contents

    Class TextObjectCollection

    Observable collection of text objects

    Inheritance
    System.Object
    TextObjectCollection
    Implements
    IWordTextObjectCollection
    System.Collections.Generic.IList<TextContent>
    System.Collections.Generic.ICollection<TextContent>
    System.Collections.Generic.IEnumerable<TextContent>
    System.Collections.IEnumerable
    IronSoftware.Abstractions.IJsonSerializable
    Namespace: IronWord.Models
    Assembly: IronWord.dll
    Syntax
    public class TextObjectCollection : ObservableCollection<TextContent>, IWordTextObjectCollection

    A group of text runs that belong together, the words and their formatting collected as one list, is held by TextObjectCollection. It is an observable list of TextContent, so it gives you ordinary list access to a passage's runs while signalling changes as items are added or removed.

    The collection derives from ObservableCollection<TextContent> and implements IList<TextContent>, so you index it, iterate it, and add or remove runs with the standard list operations. Construct an empty one with the default constructor, or pass an existing IList<TextContent> to seed it with runs you already have. The Items property exposes the backing list and IsReadOnly reports whether the collection accepts changes, while ToJson serializes the whole set of runs for logging or inspection. Because each entry is a TextContent, you reach a run's Text and its Style directly from the collection, editing words and formatting without unpacking them into a separate structure. Iterate the collection when you need to walk every run in order, and add to it as you assemble a passage from individual TextContent pieces.

    using IronWord.Models;
    
    var runs = new TextObjectCollection();
    runs.Add(new TextContent("First "));
    runs.Add(new TextContent("second"));

    The add text how-to covers building text in a document, and the document element tutorial shows where text runs sit in the model.

    Constructors

    TextObjectCollection()

    Create a new text object collection

    Declaration
    public TextObjectCollection()

    TextObjectCollection(IList<TextContent>)

    Create a new text object collection from the specified items

    Declaration
    public TextObjectCollection(IList<TextContent> items)
    Parameters
    Type Name Description
    System.Collections.Generic.IList<TextContent> items

    Text content items

    Properties

    IsReadOnly

    Declaration
    public bool IsReadOnly { get; }
    Property Value
    Type Description
    System.Boolean

    Items

    Declaration
    public IList<TextContent> Items { get; set; }
    Property Value
    Type Description
    System.Collections.Generic.IList<TextContent>

    Methods

    ToJson()

    Declaration
    public string ToJson()
    Returns
    Type Description
    System.String

    Implements

    IWordTextObjectCollection
    System.Collections.Generic.IList<>
    System.Collections.Generic.ICollection<>
    System.Collections.Generic.IEnumerable<>
    System.Collections.IEnumerable
    IronSoftware.Abstractions.IJsonSerializable
    ☀
    ☾
    Downloads
    • Download with NuGet
    • Start for Free
    In This Article
    Back to top
    Install with NuGet