Class SearchingPage<T>
列表类页面的基础类
Inheritance
SearchingPage<T>
Implements
Extension Methods
Namespace: Fleet.Mobile.Containers
Assembly: FleetMobile.dll
Syntax
public abstract class SearchingPage<T> : BasePage, INotifyPropertyChanged, IVisualTreeElement, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IAnimatable, ILayout, IPageController, IVisualElementController, IElementController, IElementConfiguration<Page>, ISafeAreaView, ITitledElement, IToolbarElement, IContentView, IPadding, ICrossPlatformLayout, IHotReloadableView, IView, IElement, ITransform, IReplaceableView, ILoading, INetworkIndicator
Type Parameters
|
T
列表元素类型 |
Constructors
SearchingPage()
Declaration
public SearchingPage()
Fields
DataProperty
GroupDataProperty
ItemTapCommandProperty
Declaration
public static readonly BindableProperty ItemTapCommandProperty
Field Value
| BindableProperty |
SearchTextProperty
cts
data
所有数据
Declaration
protected T[] data
Field Value
| T[] |
unloaded
Properties
CostTime
Data
FilterHeight
FilterMask
获取过滤遮罩层元素,默认为 null
Declaration
protected virtual VisualElement FilterMask { get; }
Property Value
| VisualElement |
FilterPanel
获取过滤面板元素,默认为 null
Declaration
protected virtual VisualElement FilterPanel { get; }
Property Value
| VisualElement |
FullData
获取未过滤的所有数据
Declaration
public T[] FullData { get; }
Property Value
| T[] |
GroupData
获取或设置分组数据
Declaration
public IEnumerable<IGrouping<string, T>> GroupData { get; set; }
Property Value
| IEnumerable<IGrouping<string, T>> |
IgnoreSearchKey
获取是否忽略搜索字符串,默认为 false
Declaration
protected virtual bool IgnoreSearchKey { get; }
Property Value
| bool |
IsGrouped
ItemTapCommand
ItemsReachedComand
PageItemsCount
RefreshCommand
RefreshForce
SearchText
SearchTextChangedCommand
SearchedCommand
Methods
DoGetDataAsync(bool, CancellationToken)
异步获取数据源。
Declaration
protected abstract Task<IEnumerable<T>> DoGetDataAsync(bool force, CancellationToken token)
Parameters
|
bool
force
是否强制刷新 |
|
CancellationToken
token
取消令牌信号 |
Returns
|
Task<IEnumerable<T>>
返回数据源 |
DoGroup(IEnumerable<T>)
分组数据源。
Declaration
protected virtual IEnumerable<IGrouping<string, T>> DoGroup(IEnumerable<T> data)
Parameters
|
IEnumerable<T>
data
待分组的数据源 |
Returns
|
IEnumerable<IGrouping<string, T>>
返回已分组的数据源 |
DoSearch(IEnumerable<T>, string)
根据搜索字符串过滤数据源。
Declaration
protected virtual IEnumerable<T> DoSearch(IEnumerable<T> data, string searchKey)
Parameters
|
IEnumerable<T>
data
待搜索的数据源 |
|
string
searchKey
搜索字符串 |
Returns
|
IEnumerable<T>
返回已过滤的数据源 |
DoSort(IEnumerable<T>)
排序数据源。
Declaration
protected virtual IEnumerable<T> DoSort(IEnumerable<T> data)
Parameters
|
IEnumerable<T>
data
待排序的数据源 |
Returns
|
IEnumerable<T>
返回已排序的数据源 |
OnBackAsync()
子类重写时可自定义返回指令的行为,默认先判断是否可在加载时关闭,堆栈有页面时返回上一页,否则返回主路由。
Declaration
protected override Task OnBackAsync()
Returns
| Task |
Overrides
OnNavigatedTo(NavigatedToEventArgs)
OnRefreshInternal(bool)
内部刷新数据,根据参数确定是否强刷。
Declaration
protected void OnRefreshInternal(bool force = false)
Parameters
|
bool
force
是否强制刷新,默认 false |
OnSearchInternal(string)
内部搜索数据。
Declaration
protected void OnSearchInternal(string searchKey = null)
Parameters
|
string
searchKey
搜索文本,默认取 SearchText |
OnSearched()
Declaration
protected virtual void OnSearched()
OnSortInternal()
内部排序数据。
Declaration
protected void OnSortInternal()
TriggerRefresh()
强制触发刷新。
Declaration
protected void TriggerRefresh()
UpdateFilter(bool?)
切换过滤面板是否显示。
Declaration
protected void UpdateFilter(bool? visible = null)
Parameters
|
bool?
visible
是否显示,默认为 null 自动切换状态 |