public override void OnPageShown() { if (EnvUtils.RunningOnWindows()) { System.Resources.ResourceManager rm = new System.Resources.ResourceManager("GitUI.Properties.Resources", System.Reflection.Assembly.GetExecutingAssembly()); // dummy request; for some strange reason the ResourceSets are not loaded untill after the first object request... bug? rm.GetObject("dummy"); System.Resources.ResourceSet resourceSet = rm.GetResourceSet(System.Globalization.CultureInfo.CurrentUICulture, true, true); contextMenuStrip_SplitButton.Items.Clear(); foreach (System.Collections.DictionaryEntry icon in resourceSet) { //add entry to toolstrip if (icon.Value.GetType() == typeof(Icon)) { //contextMenuStrip_SplitButton.Items.Add(icon.Key.ToString(), (Image)((Icon)icon.Value).ToBitmap(), SplitButtonMenuItem_Click); } else if (icon.Value.GetType() == typeof(Bitmap)) { contextMenuStrip_SplitButton.Items.Add(icon.Key.ToString(), (Image)icon.Value, SplitButtonMenuItem_Click); } //var aa = icon.Value.GetType(); } resourceSet.Close(); rm.ReleaseAllResources(); } }
public override void OnPageShown() { if (!EnvUtils.RunningOnWindows()) { return; } var rm = new System.Resources.ResourceManager("GitUI.Properties.Images", Assembly.GetExecutingAssembly()); // dummy request; for some strange reason the ResourceSets are not loaded untill after the first object request... bug? rm.GetObject("dummy"); using System.Resources.ResourceSet resourceSet = rm.GetResourceSet(CultureInfo.CurrentUICulture, true, true); foreach (DictionaryEntry icon in resourceSet.Cast <DictionaryEntry>().OrderBy(icon => icon.Key)) { if (icon.Value is Bitmap bitmap) { EmbeddedIcons.Images.Add(icon.Key.ToString(), bitmap.AdaptLightness()); } } resourceSet.Close(); rm.ReleaseAllResources(); lvScripts.LargeImageList = lvScripts.SmallImageList = EmbeddedIcons; _imagsLoaded = true; if (_scripts is object) { BindScripts(_scripts, null); } }