I.Introduction
Đa ngôn ngữ là một rất đề phổ biến trong ứng dụng, Microsoft đã chính thức hộ trợ đa ngôn ngữ cho ứng dụng Windows Phone bắt đầu từ Windows Phone 7, tuy nhiên ở Windows Phone 7 hầu như ngôn ngữ không đủ, điển hình là Ngôn ngữ “Tiếng Việt” sẽ không có.
Trong Windows Phone 8, Microsoft hổ trợ gần như tất cả ngôn ngữ giúp chúng ta làm ứng dụng với đa ngôn ngữ rất dể dàng.
Trong bài này mình xin chia sẻ về cách dùng đa ngôn ngữ trong Windows Phone 8
II.Fundamental
Việc đầu tiên là chúng ta tạo Project Windows Phone 8, và Design giao diện tùy ý. giao diện này có các Textblock để hiển thị ngôn ngữ.
Giao diện đơn giản như sau :
Kế tiếp mình sẽ vào thư mục Resource-> chọn vào file AppResources.resx
và định nghĩa ngôn ngữ cho ứng dụng. Mặc định file AppResources.resx là sẽ chứa đại diện ngôn ngữ tiếng Anh.
| Name | Tên đối tượng ngôn ngữ, kiểu string |
| Value | Giá trị đối tượng ngôn ngữ |
| Comment | ghi chú |
Sau khi chúng ta định nghĩa xong các đối tượng ngôn ngữ, tiếp theo chuột phải vào tên Project –> Properties-> Tab Application -> check vào các ngôn ngữ mình muốn hổ trợ –> chọn Save.
Sau khi Save xong sẽ có một file AppResources.vi-VNresx sinh ra trong thư mục Resource
Bây giờ chỉ còn chọn và file ngôn ngữ vừa sinh ra và sửa giá trị của các đối tượng ngôn ngữ cho phù hợp.
Bây giờ mọi thứ đã xong, chúng ta chỉ cần Binding những đối tượng ngôn ngữ này vào các phần tử giao diện thông qua code xaml, hoặc dùng trong code c#.
Xaml
<!-- Binding đối tượng ngôn ngữ NameCard vào Textblock -->
<TextBlock Text="{Binding LocalizedResources.NameCard,Source={StaticResource LocalizedStrings}}" Style="{StaticResource PhoneTextTitle1Style}" Foreground="White" Margin="0"/>
C#
// Lấy đối tượng ngôn ngữ FirstName
string firstName = AppResources.FirstName;
Và bây giờ khi chuyển ngôn ngữ điện thoại sang tiếng Việt để xem kết quả :
Hy vọng bài viết này sẽ hữu ích với các bạn.