/// <summary> /// Return all names and values for localization based on language /// </summary> /// <param name="control">instance must have a RessourceTable attribute</param> /// <param name="languageID">target language id</param> /// <returns>target names and values</returns> public static Dictionary <string, string> GetRessourceValues(Control control, int languageID) { Type type = control.GetType(); Assembly assembly = type.Assembly; object[] obj = type.GetCustomAttributes(typeof(RessourceTableAttribute), false); RessourceTableAttribute attrib = obj[0] as RessourceTableAttribute; return(Translation.Translator.GetTranslateRessources(control, attrib.Address, languageID)); }
/// <summary> /// Returns all names for localization /// </summary> /// <param name="type">type of instance(must have RessourceTableAttribute)</param> /// <returns>target names</returns> public static string[] GetRessourceNames(Type type) { object[] obj = type.GetCustomAttributes(typeof(RessourceTableAttribute), false); RessourceTableAttribute attrib = obj[0] as RessourceTableAttribute; Stream stream = type.Assembly.GetManifestResourceStream(type.Assembly.GetName().Name + "." + attrib.Address); StreamReader reader = new StreamReader(stream); string content = reader.ReadToEnd(); reader.Dispose(); stream.Dispose(); return(Translation.Translator.ReadRessourceNames(content)); }