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>()

提供轉譯虛擬化專案清單的功能。

屬性

ChildContent

取得或設定清單的專案範本。

EmptyContent

取得或設定當 為空白或 為零時 ItemsTotalItemCount 要顯示的內容。

ItemContent

取得或設定清單的專案範本。

Items

取得或設定固定專案來源。

ItemSize

取得每個專案的大小,以圖元為單位。 預設值為 50px。

ItemsProvider

取得或設定提供專案給清單的函式。

OverscanCount

取得或設定值,這個值會決定在可見區域前後轉譯多少其他專案。 這有助於減少捲動期間轉譯的頻率。 不過,較高的值表示頁面上會出現更多元素。

Placeholder

取得或設定尚未在記憶體中載入之專案的範本。

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)

適用於