翻譯|產品更新|編輯:龔雪|2025-08-14 10:45:29.693|閱讀 114 次
概述:DevExpress?Blazor控件目前已經升級到v25.1版本了,此版本擁有全新的過濾器生成器、棄用了一些組件等,歡迎下載最新組件體驗!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
DevExpress Blazor UI組件使用了C#為Blazor Server和Blazor WebAssembly創建高影響力的用戶體驗,這個UI自建庫提供了一套全面的原生Blazor UI組件(包括Pivot Grid、調度程序、圖表、數據編輯器和報表等)。
DevExpress Blazor控件目前已經升級到v25.1版本了,此版本擁有全新的過濾器生成器、棄用了一些組件等,歡迎下載最新組件體驗!
DevExpress技術交流群11:749942875 歡迎一起進群討論
新的DevExpress Blazor Filter Builder UI組件允許用戶輕松創建復雜的過濾標準,Blazor Filter Builder組件(在我們的v25.1發布周期中作為社區技術預覽版提供)使用流行的CriteriaOperator語言,可以連接到任何數據感知的DevExpress Blazor組件。
DevExpress Blazor Filter Builder提供以下特性/功能:
您可以完全控制DevExpress Blazor Filter Builder顯示給用戶的數據字段,在Razor標記中逐一聲明字段:
Razor
<DxFilterBuilder> <Fields> <DxFilterBuilderField FieldName="Name" Caption="Subject" Type="typeof(string)" /> <DxFilterBuilderField FieldName="OwnerID" Caption="Assignee" Type="typeof(int)" /> <DxFilterBuilderField FieldName="Status" Caption="Status" Type="typeof(IssueStatus)" /> <DxFilterBuilderField FieldName="CreatedDate" Caption="Created" Type="typeof(DateTime)" /> <DxFilterBuilderField FieldName="FixedDate" Caption="Fixed" Type="typeof(DateTime)" /> </Fields> </DxFilterBuilder>
或者遍歷模型類屬性并在循環中定義字段:
Razor
<DxFilterBuilder> <Fields> @foreach(var field in typeof(Invoice).GetProperties()){ <DxFilterBuilderField FieldName="@field.Name" Type="@field.PropertyType" /> } </Fields> </DxFilterBuilder>
對于復雜的數據模型,可以將嵌套字段組織成樹狀結構。您還可以自定義顯示在樹(Caption)和結果過濾條件(CaptionFullPath)中的字段標題。
Razor
<DxFilterBuilder> <Fields> <DxFilterBuilderField FieldName="Order.ID" Caption="Order"> <Fields> <DxFilterBuilderField FieldName="Order.Date" Caption="Date" CaptionFullPath="Order.Date" Type="typeof(DateTime)" /> <DxFilterBuilderField FieldName="Order.Shipped" Caption="Shipped" CaptionFullPath="Order.Shipped" Type="typeof(bool)" /> </Fields> </DxFilterBuilderField> </Fields> </DxFilterBuilder>
雖然DevExpress Blazor Filter Builder會根據字段類型自動生成預配置的數據編輯器,但您可以覆蓋用于任何字段的默認編輯器。使用EditSettings標簽為字段指定DevExpress Blazor編輯器,并根據需要配置編輯器屬性。例如,您可以對貨幣字段應用掩碼來格式化相關值:
Razor
<DxFilterBuilderField FieldName="Total" Type="typeof(decimal)"> <EditSettings> <DxSpinEditSettings Mask="c0" DisplayFormat="c0" /> </EditSettings> </DxFilterBuilderField>
或者為枚舉字段配置一個ComboBox編輯器:
Razor
<DxFilterBuilderField FieldName="Status" Type="typeof(IssueStatus)"> <EditSettings> <DxComboBoxSettings Data="StatusList" /> </EditSettings> </DxFilterBuilderField>
對于外鍵字段,可以顯示用戶友好的文本,替代原始ID值。要顯示用戶友好的文本,請將DxComboBoxSettings放在EditSettings標記中,并指定編輯器數據源、值字段名稱和文本字段名稱。
Razor
<DxFilterBuilderField FieldName="OwnerID" Caption="Assignee" Type="typeof(int)"> <EditSettings> <DxComboBoxSettings Data="UserList" ValueFieldName="ID" TextFieldName="FullName" /> </EditSettings> </DxFilterBuilderField>
配置完成后,即使關閉了ComboBox編輯器,該字段也會顯示文本值而不是底層ID。
您可以將Blazor Filter Builder連接到支持CriteriaOperator語法的數據感知的DevExpress Blazor UI組件:
對于雙向過濾器同步,使用帶有FilterCriteria屬性的@bind指令:
Razor
<DxFilterBuilder @bind-FilterCriteria="gridFilter"> ... </DxFilterBuilder> <DxButton Click="ApplyFilter">Apply Filter</DxButton> <DxButton Click="ClearFilter">Clear Filter</DxButton> <DxGrid @ref="Grid" FilterCriteriaChanged="OnFilterChanged" ShowFilterRow="true"> ... </DxGrid> @code { CriteriaOperator gridFilter; IGrid Grid { get; set; } void OnFilterChanged(GridFilterCriteriaChangedEventArgs e) { gridFilter = e.FilterCriteria; } void ApplyFilter() { Grid.SetFilterCriteria(gridFilter); } void ClearFilter() { Grid.SetFilterCriteria(null); } }
為了簡化發行版,DevExpress從v25.1更新中刪除了以下舊組件:
為了避免問題,請檢查您的項目中是否有來自DevExpress.Blazor.Legacy命名空間的組件,并遷移到新的DevExpress替代品中。
有用的資源:
更多產品資訊及授權,歡迎來電咨詢:023-68661681
慧都是?家?業數字化解決?案公司,專注于軟件、?油與?業領域,以深?的業務理解和?業經驗,幫助企業實現智能化轉型與持續競爭優勢。
慧都是DevExpress的中國區的合作伙伴,DevExpress作為用戶界面領域的優秀產品,幫助企業高效構建權限管理、數據可視化(如網格/圖表/儀表盤)、跨平臺系統(WinForms/ASP.NET/.NET MAUI)及行業定制解決方案,加速開發并強化交互體驗。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網