2011-07-19 38 views
0

在WPF應用程序中,主窗口具有內容控件,用戶控件可以加載到其中。這些用戶控件中的每一個都有大約1000個小而簡單的自定義控件。這就是爲什麼切換到另一個用戶控制的渲染時間不舒服。將視圖預加載到WPF應用程序的UI中。這怎麼可能?

我的問題是,以某種方式將視圖預加載到UI中的正確方法是什麼,以便快速切換到另一個視圖?它可以以某種方式完成,對用戶不可見?或者渲染一個XAML應該始終在一個可見的,有重點的窗口部分完成,所以不可能預先加載未來可能需要的東西?

請注意,我並不是說從數據庫中預加載數據。

回答

1

我沒有必要做這個,到目前爲止,但:

你可以嘗試加載到不得到應有的佈局決定顯示的控制你想要的內容。這應該強制內容被創建,即使它不會立即顯示。

如果您想「將內容帶入」,請將其從當前位置的可視化樹中移除(確切的方法可能取決於其父項的確切位置),並將其重新插入另一個可見子項, 控制。

1

考慮實施簡單的翻轉內容控制。 它應該提供兩個依賴屬性,它包含兩個內容模板和一個依賴屬性(SwitchTemplate)以在提供的模板之間切換。 因此默認情況下它會顯示默認ContentTemplate,並通過觸發SwitchTemplate屬性設置第二個ContentTempale作爲翻轉控制的主要部分。

相關問題