我正在爲Windows Store設計媒體播放器,並且我正在使用Resources.resw文件來存儲所有英文(en-GB)字符串和其他.xlf文件以存儲翻譯在其他幾種語言中。 我在XAML代碼中使用x:Uid="*something*"
來訪問字符串。例如,我有下一個AppBarButton:Metro:從全球資源中獲取字符串
<AppBarButton Icon="Play"
x:Uid="Play"
Label="Play"
Click="btnPlayPause_Click"
Name="PlayPauseAppBarButton"/>
以任何語言顯示文本我嘗試完美工作。唯一的問題是,我的「PlayPauseAppBarButton」是一個雙重目的按鈕: - 當沒有什麼玩的圖標是「播放」和標籤中的「播放」 - 當有東西玩,現在的圖標是「暫停」和標籤應「暫停」
改變從代碼中的圖標很簡單:
PlayPauseAppBarButton.Icon = new SymbolIcon(Symbol.Pause);
問題仍然相應地更改標籤。 我已經嘗試:
var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
PlayPauseAppBarButton.Label = loader.GetString("Pause.Label");
有沒有錯誤,資源「Pause.Label」是公認的,但是當程序運行時會顯示「播放」(因爲最初的XAML的),當它有要更改標籤,它什麼也不顯示。調試後,我觀察到loader.GetString(「Pause.Label」)返回一個「」值(無文本)。
所以,我怎麼能解決問題呢?