看板 WindowsPhone 關於我們 聯絡資訊
承上篇的Win8篇,Windows Phone 7/8相對而言算是比較簡單的 (除了動態磚的標題以外......) 最主要的原因是Windows Phone 7/8每個專案都有內建「LocalizedStrings.cs」 所以不需要像Windows 8/8.1一樣使用x:Uid的方式 這個類別最重要的是直接先幫你把資源字串產生出來 因此最大的不同之處就是你在XAML用了之後可以馬上看到成果 不過缺點是當你改了資源檔後,畫面不會改也不會自動新增資源, 可能還會跳錯跟你說找不到某某某資源, 所以還是需要重建專案一次才行。 在預設的情況下,應該可以在Resources的資料夾下面看到AppResources.resx這個檔案 (不意外的其實也是個XML檔案,但是仍然建議用預設的編輯器去開) 裡面有一些預設已經定義完畢的字串 重點是ApplicationTitle、ResourceLanguage這兩項 預設應該會是「我的應用程式」、「zh-TW」才對(以繁體中文版建立的話) 輸入名稱與值,並且重建專案後 就可以直接在頁面的XAML輸入資源字串 Windows Phone 7/8的方式是綁定字串 因此不是輸入x:Uid而是在想要綁定的屬性上輸入 {Binding Path=LocalizedResources.(資源名稱), Source={StaticResource LocalizedStrings}} (注意不可以斷行) 而如果是程式碼的話,則是必須先引用「(專案名稱).Resources」的命名空間 接著使用「AppResources.(資源名稱)」才能把資源給讀取進來 至於怎麼產生多語系檔案呢? 要先注意的是,你在WMAppMenifest.xml裡面「封裝→支援的語系」做設定的話其實沒用 而是要在專案上按右鍵選屬性, 在跳出來的視窗中「支援的文化特性」這項勾選你想支援的語言 系統才會對應產生AppResources.resx的多語系檔案 雖然我比較喜歡這種方式,不過Windows Phone 8.1似乎是往Win8.1方向靠過去 所以這樣的開發模式大概就要走入歷史了...... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.250.112.253
SuperTaco:推!!! 03/10 14:47
monkeyii:外標題 跟 內標題不同 ? 哪個才是對的 ? 03/10 18:22
版主幫我改的,我也同意了,所以請以外標題為準(汗 ※ 編輯: hoyunxian 來自: 111.250.112.253 (03/10 19:26)
felaray:原本標題比較模糊 所以我幫原po改成這樣啦~ 03/10 22:00