通过


Virtualize<TItem> 类

定义

提供用于呈现项虚拟化列表的功能。

generic <typename TItem>
public ref class Virtualize sealed : Microsoft::AspNetCore::Components::ComponentBase, IAsyncDisposable
public sealed class Virtualize<TItem> : Microsoft.AspNetCore.Components.ComponentBase, IAsyncDisposable
type Virtualize<'Item> = class
    inherit ComponentBase
    interface IAsyncDisposable
Public NotInheritable Class Virtualize(Of TItem)
Inherits ComponentBase
Implements IAsyncDisposable

类型参数

TItem

context要呈现的项的类型。

继承
Virtualize<TItem>
实现

构造函数

名称 说明
Virtualize<TItem>()

提供用于呈现项虚拟化列表的功能。

属性

名称 说明
Assets

获取 ResourceAssetCollection 应用程序。

(继承自 ComponentBase)
AssignedRenderMode

获取 IComponentRenderMode 分配给此组件。

(继承自 ComponentBase)
ChildContent

获取或设置列表的项模板。 请参阅 ItemContent

EmptyContent

获取或设置要显示为空或零时ItemsTotalItemCount显示的内容。

ItemContent

获取或设置列表的项模板。

Items

获取或设置固定项源。

ItemSize

获取每个项的大小(以像素为单位)。 默认值为 50px。

ItemsProvider

获取或设置提供列表项的函数。

MaxItemCount

获取或设置将呈现的最大项数,即使客户端报告其视区足够大,也足以显示更多项。 默认值为 100。

这只能用作防止内存过多或大量数据加载的保障。 不要将此设置为小于预期适合实际大小的窗口的数字,因为这会使下面的空白空白空白,并且用户可能无法看到其余内容。

OverscanCount

获取或设置一个值,该值确定将在可见区域前后呈现多少个附加项。 这有助于降低滚动期间呈现的频率。 但是,较高的值意味着页面中将存在更多的元素。

Placeholder

获取或设置尚未在内存中加载的项的模板。

RendererInfo

获取 RendererInfo 组件正在运行。

(继承自 ComponentBase)
SpacerElement

获取或设置将用作虚拟化空格键的 HTML 元素的标记名称。 一个这样的元素将在可见项之前呈现,并在它们之后再呈现一个,使用显式的“高度”样式来控制滚动范围。

默认值为“div”。 如果要将 Virtualize<TItem> 实例置于需要特定子标记名称的元素内,请考虑在此处设置。 例如,在“tbody”内呈现时,请考虑设置为 SpacerElement 值“tr”。

方法

名称 说明
BuildRenderTree(RenderTreeBuilder)

将组件呈现到提供的 RenderTreeBuilder组件。

(继承自 ComponentBase)
DispatchExceptionAsync(Exception)

将提供的 exception 组件视为被此组件引发。 这将导致封闭的 ErrorBoundary 转换为失败状态。 如果没有封闭的 ErrorBoundary,它将被视为封闭呈现器中的异常。

如果异常发生在组件生命周期方法之外,但你希望将其视为组件生命周期方法中的异常,这非常有用。

(继承自 ComponentBase)
DisposeAsync()

提供用于呈现项虚拟化列表的功能。

InvokeAsync(Action)

在关联的呈现器同步上下文上执行提供的工作项。

(继承自 ComponentBase)
InvokeAsync(Func<Task>)

在关联的呈现器同步上下文上执行提供的工作项。

(继承自 ComponentBase)
OnAfterRender(Boolean)

每次以交互方式呈现组件且 UI 完成更新(例如,元素添加到浏览器 DOM 后)后调用的方法。 在运行此字段时,将填充任何 ElementReference 字段。

此方法不会在预呈现或服务器端呈现期间调用,因为这些进程不会附加到任何实时浏览器 DOM,并且已在 DOM 更新之前完成。

(继承自 ComponentBase)
OnAfterRenderAsync(Boolean)

每次以交互方式呈现组件后调用的方法,UI 已完成更新(例如,元素添加到浏览器 DOM 之后)。 在运行此字段时,将填充任何 ElementReference 字段。

此方法不会在预呈现或服务器端呈现期间调用,因为这些进程不会附加到任何实时浏览器 DOM,并且已在 DOM 更新之前完成。

请注意,该组件不会在返回的任何内容 Task完成后自动重新呈现,因为这将导致无限呈现循环。

(继承自 ComponentBase)
OnInitialized()

组件准备好启动时调用的方法,从呈现树中的父级接收其初始参数。

(继承自 ComponentBase)
OnInitializedAsync()

组件准备好启动时调用的方法,从呈现树中的父级接收其初始参数。

如果要执行异步操作并希望组件在完成该操作时刷新,请重写此方法。

(继承自 ComponentBase)
OnParametersSet()

当组件从呈现树中的父级接收参数并且已将传入值分配给属性时调用的方法。

(继承自 ComponentBase)
OnParametersSetAsync()

当组件从呈现树中的父级接收参数并且已将传入值分配给属性时调用的方法。

(继承自 ComponentBase)
RefreshDataAsync()

指示组件从其 ItemsProvider重新请求数据。 如果外部数据可能已更改,这非常有用。 使用 Items时无需调用此调用。

SetParametersAsync(ParameterView)

设置组件父级在呈现树中提供的参数。

(继承自 ComponentBase)
ShouldRender()

返回一个标志,指示组件是否应呈现。

(继承自 ComponentBase)
StateHasChanged()

通知组件其状态已更改。 如果适用,这将导致组件重新呈现。

(继承自 ComponentBase)

显式接口实现

名称 说明
IComponent.Attach(RenderHandle)

提供用于呈现项虚拟化列表的功能。

(继承自 ComponentBase)
IHandleAfterRender.OnAfterRenderAsync()

提供用于呈现项虚拟化列表的功能。

(继承自 ComponentBase)
IHandleEvent.HandleEventAsync(EventCallbackWorkItem, Object)

提供用于呈现项虚拟化列表的功能。

(继承自 ComponentBase)

适用于