2012-09-10 64 views
1

我應該首先說我對MVVM模式相對陌生。話雖如此,我有兩個標籤,我試圖加載大型數據集。我希望在加載頁面時加載第一個選項卡,但是當您單擊另一個選項卡時,第一個選項卡將被卸載,第二個選項卡將被加載(也稱爲Lazy Loaded)。任何想法如何做到這一點?使用MVVM在wpf選項卡中延遲加載大型數據集

回答

2

保持用戶界面對用戶的響應非常重要,並且加載大量數據會對用戶體驗產生負面影響。這就是爲什麼在像你這樣的情況下,我有view-model調用一個使用BackgroundWorker來加載數據的方法。您在應用程序生命週期中執行此操作越早,您的用戶體驗就越好。

因此,像mathieu建議的那樣,將控件的屬性綁定到您的視圖模型並讓您的視圖模型以非阻塞的方式加載數據。

0

您可以將TabControl的SelectedValue屬性綁定到viewmodel的屬性。

這樣,您可以在屬性值更改時卸載/加載正確的數據。