Skip to main content
All docs
V25.1
  • List.ChangeLevelPropertiesAsync(Int32, Action<ListLevelProperties>, CancellationToken) Method

    Sets list level properties.

    Namespace: DevExpress.Blazor.RichEdit

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

    NuGet Package: DevExpress.Blazor.RichEdit

    Declaration

    public ValueTask<bool> ChangeLevelPropertiesAsync(
        int levelIndex,
        Action<ListLevelProperties> modifier,
        CancellationToken cancellationToken = default(CancellationToken)
    )

    Parameters

    Name Type Description
    levelIndex Int32

    The list level index in the collection.

    modifier Action<ListLevelProperties>

    A delegate method that configures list level 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

    The type of the list defines default settings for list levels. Pass a ListLevelProperties object to the ChangeLevelPropertiesAsync method to specify a list level’s properties. You can specify list level properties manually or call the CopyFrom(ListLevel) method to copy properties from another list level.

    <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;
                List multiLevelList = await documentAPI.Lists.CreateAsync(ListType.MultiLevel);
                IReadOnlyList<ListLevel> listLevels = multiLevelList.ListLevels;
                ListLevel firstLevel = listLevels[0];
                for (int i = 1; i < 9; i++)
                    await multiLevelList.ChangeLevelPropertiesAsync(i, properties => {
                        properties.CopyFrom(firstLevel);
                        properties.LeftIndent = firstLevel.LeftIndent + 300 * i;
                        if (multiLevelList.Type == ListType.Number)
                            properties.DisplayFormatString = "{" + i.ToString() + "}";
                    });
            }
            catch (OperationCanceledException e) {
                Console.WriteLine($"{nameof(OperationCanceledException)} thrown with message: {e.Message}");
            }
    }
    
    See Also