Andwho.Windows.Forms.QQToolStripRenderer.OnRenderMenuItemBackground C# (CSharp) Method

OnRenderMenuItemBackground() protected method

鼠标划过时的状态
protected OnRenderMenuItemBackground ( ToolStripItemRenderEventArgs e ) : void
e ToolStripItemRenderEventArgs
return void
        protected override void OnRenderMenuItemBackground(ToolStripItemRenderEventArgs e)
        {
            Graphics g = e.Graphics;
            ToolStripItem item = e.Item;
            ToolStrip toolstrip = e.ToolStrip;

            if (toolstrip is ToolStrip)
            {
                g.SmoothingMode = SmoothingMode.HighQuality;
                //绘制选中项
                if (item.Selected)
                {
                    item.ForeColor = Color.White;
                    Image select = AssemblyHelper.GetImage("QQ.ContextMenu.menu_highlight.png");
                    Rectangle rect = new Rectangle(
                        item.ContentRectangle.X + 1,
                        item.ContentRectangle.Y,
                        item.ContentRectangle.Width - 1,
                        item.ContentRectangle.Height);
                    Rectangle imgRect = new Rectangle(0, 0, select.Width - 1, select.Height);
                    g.DrawImage(select, rect, imgRect, GraphicsUnit.Pixel);
                }
                else
                {
                    item.ForeColor = Color.Black;
                }
            }
            else
            {
                base.OnRenderMenuItemBackground(e);
            }
        }