Skip to main content

TextSpan.ChangePropertiesAsync(Action<CharacterProperties>, CancellationToken) Method

Sets the properties of the text span’s characters.

Namespace: DevExpress.Blazor.RichEdit

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

NuGet Package: DevExpress.Blazor.RichEdit

Declaration

public ValueTask<bool> ChangePropertiesAsync(
    Action<CharacterProperties> modifier,
    CancellationToken cancellationToken = default(CancellationToken)
)

Parameters

Name Type Description
modifier Action<CharacterProperties>

A delegate method that configures character properties.

Optional Parameters

Name Type Default Description
cancellationToken CancellationToken null

An object that propagates a cancellation notification.

Returns

Type Description
ValueTask<Boolean>

A structure that stores an awaitable result of an asynchronous operation. The awaitable result is true if the operation ends successfully; otherwise, it is false.

Remarks

Pass a CharacterProperties object to the ChangePropertiesAsync(Action<CharacterProperties>) method to set properties of a text span’s characters. You can specify character properties manually or use the CopyFrom(TextSpan) method to copy properties from another text span’s characters.

<DxRichEdit @ref="richEdit" />

@code {
    DxRichEdit richEdit;
    Document documentAPI;
    @* ... *@
    /* 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 canceled. */
        try {
            documentAPI = richEdit.DocumentAPI;
            TextSpan characters = await documentAPI.AddTextAsync("New Text");
            @* ... *@
            IReadOnlyList<Paragraph> paragraphs = await documentAPI.Paragraphs.GetAllAsync();
            foreach (Paragraph p in paragraphs) {
                TextSpan currentCharacters = await documentAPI.GetTextSpanAsync(p.Interval);
                await currentCharacters.ChangePropertiesAsync(properties => {
                    properties.CopyFrom(characters);
                });
            }
            @* ... *@
        }
        catch (OperationCanceledException e) {
            Console.WriteLine($"{nameof(OperationCanceledException)} thrown with message: {e.Message}");
        }
}
See Also