Virtualize<TItem> 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供轉譯虛擬化專案清單的功能。
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>() |
提供轉譯虛擬化專案清單的功能。 |
屬性
ChildContent |
取得或設定清單的專案範本。 |
EmptyContent |
取得或設定當 為空白或 為零時 ItemsTotalItemCount 要顯示的內容。 |
ItemContent |
取得或設定清單的專案範本。 |
Items |
取得或設定固定專案來源。 |
ItemSize |
取得每個專案的大小,以圖元為單位。 預設值為 50px。 |
ItemsProvider |
取得或設定提供專案給清單的函式。 |
OverscanCount |
取得或設定值,這個值會決定在可見區域前後轉譯多少其他專案。 這有助於減少捲動期間轉譯的頻率。 不過,較高的值表示頁面上會出現更多元素。 |
Placeholder |
取得或設定尚未在記憶體中載入之專案的範本。 |
SpacerElement |
取得或設定將做為虛擬化空白字元的 HTML 元素標記名稱。 一個這類元素會在可見專案之前轉譯,並在它們之後再轉譯一個,使用明確的「高度」樣式來控制捲動範圍。 預設值為 「div」。 如果您要將 Virtualize<TItem> 實例放在需要特定子標籤名稱的專案內,請考慮在此處設定。 例如,在「tbody」內轉譯時,請考慮將 設定 SpacerElement 為 「tr」 值。 |
方法
BuildRenderTree(RenderTreeBuilder) |
將元件轉譯為提供的 RenderTreeBuilder 。 (繼承來源 ComponentBase) |
DispatchExceptionAsync(Exception) |
將提供的 如果例外狀況發生在元件生命週期方法之外,但您想要將其視為元件生命週期方法的例外狀況,這非常有用。 (繼承來源 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) |
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應