Windows Phone 實用開發技巧(20):ApplicationBar 的Text國際化

咱們知道Windows Phone 中ApplicationBar的Text屬性不是依賴屬性,不能採起綁定的方法實現文本的國際化,那麼咱們在實際開發中是怎麼實現ApplicationBar的文本多語言的呢?有以下幾種方法:
1. 在後置代碼中生成AppBar,文本使用資源文件
這種方法是最簡單的方法,就是在將XAML代碼翻譯爲C#代碼,其中的一個好處就是Text能夠國際化。
2. 使用靜態資源
這個方法相似於樣式,即Text={"StaticResource Appbar_Save"}的形式。

 

在練習本篇Demo以前,你們最好先看下《Windows Phone 應用程序的全球化》 ,其中涉及到的一些具體細節在本篇中就不說了。html

 大體界面以下,爲了方便起見,咱們在改變語言後就更改當前環境的語言,而導航到另外一頁面後語言資源就會從新加載。ide

注:界面語言只有在InitializeComponent 的時候纔會被從新加載 post

 

首先來看下後置代碼的實現方式:spa

 

在代碼中設置Text屬性,AppResource是什麼?--不解釋翻譯

 

再來看下靜態資源的實現方式:component

在頁面中設置Text屬性爲靜態字符串 htm

 

那這些靜態資源是再哪裏定義的呢?blog

新建三個資源XAML(跟Style同樣) 內存

 

ok,再來看下咱們改變語言時會作些什麼-- 不解釋:)資源

 

那若是讓應用程序找到靜態資源文件呢?咱們須要將資源文件動態添加到內存中,以下:

注:因爲是資源文件,因此須要加上/項目;component/ 否則會找不到資源

 

想看運行效果,本身運行Demo吧:

 

相關文章
相關標籤/搜索