コード例 #1
0
        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();
            }
        }
コード例 #2
0
        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);
            }
        }