Advertisement
Guest User

Untitled

a guest
Apr 25th, 2015
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.Xml;
  11. using Multilanguage_Application_XML.Properties;
  12.  
  13. namespace Multilanguage_Application_XML
  14. {
  15. public partial class Form1 : Form
  16. {
  17. public Form1()
  18. {
  19. InitializeComponent();
  20.  
  21. languageComboBox.Items.Add(new Language("LangPL", "polski"));
  22. languageComboBox.Items.Add(new Language("LangEN", "english"));
  23. languageComboBox.SelectedIndex = 0;
  24. languageComboBox.SelectedValueChanged += languageComboBox_SelectedValueChanged;
  25. }
  26.  
  27. void languageComboBox_SelectedValueChanged(object sender, EventArgs e)
  28. {
  29. Language selectedLanguage = (Language)languageComboBox.SelectedItem;
  30. Settings.Default.App_Language = selectedLanguage.Name;
  31. UpdateLanguage(this);
  32. }
  33.  
  34. static void UpdateLanguage(Form _form)
  35. {
  36. foreach (Control ctrl in _form.Controls)
  37. {
  38. UpdateLanguageControls(_form.Text, ctrl);
  39. }
  40. }
  41.  
  42. static void UpdateLanguageControls(string _formName, Control _ctrl)
  43. {
  44. _ctrl.Text = XMLHelper.GetString(_formName + "_" + _ctrl.Name);
  45. }
  46. }
  47.  
  48. static class XMLHelper
  49. {
  50. public static string GetString(string _str)
  51. {
  52. XmlTextReader reader = new XmlTextReader("LanguageFiles/" + Settings.Default.App_Language + ".xml");
  53.  
  54. while (reader.Read())
  55. {
  56. if (reader.Name == _str)
  57. {
  58. reader.Read();
  59. return reader.Value;
  60. }
  61. }
  62.  
  63. return "String \"" + _str + "\" not found!";
  64. }
  65. }
  66.  
  67. class Language
  68. {
  69. public string Name { get; set; }
  70. public string ShowableName { get; set; }
  71.  
  72. public Language(string _Name, string _ShowableName)
  73. {
  74. Name = _Name;
  75. ShowableName = _ShowableName;
  76. }
  77.  
  78. public override string ToString()
  79. {
  80. return ShowableName;
  81. }
  82. }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement