2013-05-10 67 views
0

我有一個WinRT應用程序,我希望用戶能夠選擇主題,除Light/Dark之外,我還可以定義其他主題嗎?WinRT用戶可選主題

回答

1

它目前沒有內置到平臺中,所以您需要自己實現它。我會這樣做的方式是在應用程序級別替換資源字典,並在切換字典時重新創建可視化樹(例如,刪除並添加整個控制樹 - 根Frame,當前頁面等。StaticResource綁定永遠不會更新,因此您需要以強制重新評估,這應該是最簡單的方法來做到這一點

+0

Filip,我該如何做到這一點?我試圖改變一些資源在運行時,他們不顯示,除非我重新啓動應用程序,假設它是由於StaticResource綁定沒有更新,就像你說的那樣。你可以舉一個例子來說明如何做到這一點嗎? – 2015-06-03 03:03:43

+0

StaticResources是靜態的,所以它們不會重新評估,除非他們需要。他們被加載,但你可以嘗試我提到的 - 從Window.Current.Content中移除框架,然後將其添加或返回新實例。導航到頁面的新實例等。 – 2015-06-03 04:34:59

+0

當然,這也有可能是因爲我最後一次嘗試 - 平臺變得更聰明並且正在緩存資源,因此您需要重新啓動應用以刷新它們,但我仍然會嘗試。 – 2015-06-03 04:36:33