2015-01-10 117 views
0

編寫我的應用程序後,我開始測試不同的場景。當我將主題背景從黑暗更改爲系統設置時,頁面中的某些控件相應地改變了顏色。由於我使用的ThemeResources屬於正常行爲,但由於其中大部分都是根據黑暗背景設計的,因此頁面無法使用。Windows Phone 8.1的自定義主題

因此,我開始搜索關於主題的網絡,以實現我自己的主題並解決問題。不幸的是,在我的研究之後,我無法找到一個好的解決方案,並且遇到了有關爲我的應用程序創建自定義主題的問題。

首先有一種方法可以覆蓋系統主題。例如,即使用戶選擇了燈光主題,我也可以在我的應用程序中應用黑暗主題。我希望在未來支持系統主題,但不是一開始就這樣做,這樣可以大大減輕我的工作量。

其次,創建新主題的最佳方式是什麼?在搜索解決方案時,我讀到從generic.xaml複製整個主題並使用新密鑰進行處理是一個簡單的解決方案。這可以嗎,這是一個很好的做法嗎?

最後,如果我創建多個主題,比如說藍色和紅色,有沒有一種方法可以使用C#以編程方式獲取這些主題名稱。

一如既往地感謝您的幫助。

+0

我找到了答案,我在http://stackoverflow.com/a/17583108/252738的第一個問題。 –

+0

至於第二個和下一個問題,我認爲你可以看看[這個答案](http://stackoverflow.com/a/24845631/2681948) - 它基本上展示瞭如何在xaml中創建ThemeDistionaries。我會以這種方式做你想做的 - 爲主題定義資源。 – Romasz

回答

0

第一個問題: 是的,你也可以通過下面的片段這樣做......你已經覆蓋RequestedTheme這裏

<Application x:Class="App2.App" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:local="using:App2" 
RequestedTheme="Dark"> 
</Application> 

第二個問題: 是的,這是好辦法初學者。

欲瞭解更多信息請訪問this