原創(chuàng)|使用教程|編輯:龔雪|2025-09-24 10:10:43.453|閱讀 54 次
概述:本文主要介紹如何使用虛擬源將WPF數(shù)據(jù)網(wǎng)格綁定到任何數(shù)據(jù)源,歡迎下載最新版組件體驗(yàn)!
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
DevExpress WPF擁有120+個(gè)控件和庫(kù),將幫助您交付滿足甚至超出企業(yè)需求的高性能業(yè)務(wù)應(yīng)用程序。通過(guò)DevExpress WPF能創(chuàng)建有著強(qiáng)大互動(dòng)功能的XAML基礎(chǔ)應(yīng)用程序,這些應(yīng)用程序?qū)W⒂诋?dāng)代客戶的需求和構(gòu)建未來(lái)新一代支持觸摸的解決方案。 無(wú)論是Office辦公軟件的衍伸產(chǎn)品,還是以數(shù)據(jù)為中心的商業(yè)智能產(chǎn)品,都能通過(guò)DevExpress WPF控件來(lái)實(shí)現(xiàn)。
虛擬源允許您將DevExpress WPF GridControl綁定到任何數(shù)據(jù)源,即使總記錄計(jì)數(shù)未知。GridControl只請(qǐng)求頂級(jí)記錄或某個(gè)頁(yè)面,您可以指定數(shù)據(jù)源支持的所需數(shù)據(jù)操作。
DevExpress技術(shù)交流群11:749942875 歡迎一起進(jìn)群討論
下圖顯示了GridControl綁定到一個(gè)從Stack Exchange獲取數(shù)據(jù)的虛擬源:
您可以將DevExpress WPF GridControl連接到任何數(shù)據(jù)源:REST服務(wù)、NoSQL數(shù)據(jù)庫(kù)、自定義WCF服務(wù)、EntityFramework或任何其他ORM。
如果您將.NET 作為后端 API 的目標(biāo),請(qǐng)務(wù)必查看免費(fèi) Web API 服務(wù),并立即注冊(cè)免費(fèi)副本。解決方案向?qū)?huì)搭建一個(gè)OData v4 Web API服務(wù)(.NET 6+),并集成了授權(quán)和 CRUD 操作,由 EF Core 和XPO ORM庫(kù)提供支持。您可以使用OAuth2、JWT或自定義身份驗(yàn)證策略,并借助 Postman 或 Swagger(OpenAPI)等工具進(jìn)行 API 測(cè)試。其眾多功能之一是,我們內(nèi)置 Web API 服務(wù)會(huì)根據(jù)授予用戶的權(quán)限過(guò)濾受保護(hù)的服務(wù)器數(shù)據(jù)。高級(jí)/企業(yè)功能包括審計(jì)跟蹤、下載報(bào)告的端點(diǎn)、文件附件、檢查驗(yàn)證、本地化標(biāo)題等。要使用免費(fèi)的解決方案向?qū)Вㄓ糜趧?chuàng)建 Web API 服務(wù)),請(qǐng)從 運(yùn)行通用組件安裝程序。
綁定到的GridControl顯示無(wú)限滾動(dòng)的數(shù)據(jù):
綁定到的GridControl在頁(yè)面中顯示數(shù)據(jù):
數(shù)據(jù)源需要公開(kāi)API來(lái)連續(xù)獲取部分?jǐn)?shù)據(jù)(例如,跳過(guò)或獲取部分?jǐn)?shù)據(jù),或通過(guò)頁(yè)面索引獲取部分?jǐn)?shù)據(jù)),不需要總項(xiàng)目計(jì)數(shù);排序、過(guò)濾和匯總計(jì)算操作是可選的。
綁定到虛擬源的GridControl只請(qǐng)求頂級(jí)記錄或某個(gè)頁(yè)面,您可以指定允許哪些數(shù)據(jù)操作,例如最終用戶可以按A、C和D列排序,Search Panel可以根據(jù)StartsWith條件過(guò)濾數(shù)據(jù)。
您可以控制GridControl發(fā)送給服務(wù)或數(shù)據(jù)庫(kù)的請(qǐng)求,這可以防止使用非最優(yōu)查詢使數(shù)據(jù)庫(kù)過(guò)載,GridControl自動(dòng)隱藏所有不支持操作的UI元素。
異步虛擬源在UI線程中引發(fā)事件,并使用任務(wù)在并行工作線程中處理數(shù)據(jù)。您應(yīng)該將任務(wù)傳遞給這些事件來(lái)獲取摘要、行等,然后UI線程獲取您獲取的數(shù)據(jù)。
您可以在ViewModel級(jí)別實(shí)現(xiàn)虛擬源的數(shù)據(jù)操作,而無(wú)需依賴UI。
按照以下步驟配置虛擬源并支持MVVM模式:
XAML
<dxg:GridControl> <dxg:GridControl.ItemsSource> <dx:InfiniteAsyncSource ElementType="{x:Type local:IssueData}" FetchRowsCommand="{Binding FetchIssuesCommand}" GetUniqueValuesCommand="{Binding GetUniqueValuesCommand}" GetTotalSummariesCommand="{Binding GetTotalSummariesCommand}"/> </dxg:GridControl.ItemsSource> <!-- ... --> </dxg:GridControl>
更多產(chǎn)品資訊及授權(quán),歡迎來(lái)電咨詢:023-68661681
慧都是?家?業(yè)數(shù)字化解決?案公司,專(zhuān)注于軟件、?油與?業(yè)領(lǐng)域,以深?的業(yè)務(wù)理解和?業(yè)經(jīng)驗(yàn),幫助企業(yè)實(shí)現(xiàn)智能化轉(zhuǎn)型與持續(xù)競(jìng)爭(zhēng)優(yōu)勢(shì)。
慧都是DevExpress的中國(guó)區(qū)的合作伙伴,DevExpress作為用戶界面領(lǐng)域的優(yōu)秀產(chǎn)品,幫助企業(yè)高效構(gòu)建權(quán)限管理、數(shù)據(jù)可視化(如網(wǎng)格/圖表/儀表盤(pán))、跨平臺(tái)系統(tǒng)(WinForms/ASP.NET/.NET MAUI)及行業(yè)定制解決方案,加速開(kāi)發(fā)并強(qiáng)化交互體驗(yàn)。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都網(wǎng)