天天看點

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

我們知道Windows Phone 中ApplicationBar的Text屬性不是依賴屬性,不能采取綁定的方法實作文本的國際化,那麼我們在實際開發中是怎麼實作ApplicationBar的文本多語言的呢?有如下幾種方法:

1. 在後置代碼中生成AppBar,文本使用資源檔案

這種方法是最簡單的方法,就是在将XAML代碼翻譯為C#代碼,其中的一個好處就是Text可以國際化。

2. 使用靜态資源

這個方法類似于樣式,即Text={"StaticResource Appbar_Save"}的形式。

 大緻界面如下,為了友善起見,我們在改變語言後就更改目前環境的語言,而導航到另一頁面後語言資源就會重新加載。

注:界面語言隻有在InitializeComponent 的時候才會被重新加載 

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

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

再來看下靜态資源的實作方式:

在頁面中設定Text屬性為靜态字元串 

那這些靜态資源是再哪裡定義的呢?

建立三個資源XAML(跟Style一樣) 

ok,再來看下我們改變語言時會做些什麼-- 不解釋:)

那如果讓應用程式找到靜态資源檔案呢?我們需要将資源檔案動态添加到記憶體中,如下:

注:由于是資源檔案,是以需要加上/項目;component/ 不然會找不到資源

想看運作效果,自己運作Demo吧:

    本文轉自xshf12345 51CTO部落格,原文連結:http://blog.51cto.com/alexis/660322,如需轉載請自行聯系原作者

繼續閱讀