Back to Devexpress

Tables.CreateAsync(Int32, Int32, Int32, CancellationToken) Method

blazor-devexpress-dot-blazor-dot-richedit-dot-tables-dot-createasync-x28-system-dot-int32-system-dot-int32-system-dot-int32-system-dot-threading-dot-cancellationtoken-x29.md

latest3.1 KB
Original Source

Tables.CreateAsync(Int32, Int32, Int32, CancellationToken) Method

Adds a table.

Namespace : DevExpress.Blazor.RichEdit

Assembly : DevExpress.Blazor.RichEdit.v25.2.dll

NuGet Package : DevExpress.Blazor.RichEdit

Declaration

csharp
public ValueTask<Table> CreateAsync(
    int position,
    int columnCount,
    int rowCount,
    CancellationToken cancellationToken = default(CancellationToken)
)

Parameters

NameTypeDescription
positionInt32

The document position in which to insert the table.

| | columnCount | Int32 |

The number of columns in the table.

| | rowCount | Int32 |

The number of rows in the table.

|

Optional Parameters

NameTypeDefaultDescription
cancellationTokenCancellationTokennull

An object that propagates a cancellation notification.

|

Returns

TypeDescription
ValueTask<Table>

A structure that stores an awaitable result of an asynchronous operation. The awaitable result is a table object.

|

Remarks

The following code snippet creates a table and populates it with data.

razor
<DxRichEdit @ref="@richEdit" />
@code {
    DxRichEdit richEdit { get; set; }
    @* ... *@
        /* Surround the code that contains an asynchronous operation with a try-catch block to handle
        the OperationCanceledException. This exception is thrown when an asynchronous operation is cancelled. */
        try {
        @* ... *@
            var columnCount = 4;
            var rowCount = 5;
            richEdit.DocumentAPI.BeginUpdate();
            await richEdit.DocumentAPI.Tables.CreateAsync(0, columnCount, rowCount);
            for (int i = 0; i < rowCount; i++)
                for (int j = 0; j < columnCount; j++) {
                    var myTable = await richEdit.DocumentAPI.Tables.GetAsync(0);
                    var cellPosition = myTable.Rows[i].Cells[j].Interval.Start;
                    await richEdit.DocumentAPI.AddTextAsync(cellPosition, "Row=" + (i + 1) + ",Column=" + (j + 1));
                }
            richEdit.DocumentAPI.EndUpdate();
            @* ... *@
        }
        catch (OperationCanceledException e) {
            Console.WriteLine($"{nameof(OperationCanceledException)} thrown with message: {e.Message}");
        }
}

See Also

Tables in Blazor Rich Text Editor

Tables Class

Tables Members

DevExpress.Blazor.RichEdit Namespace