/// <summary> /// /// </summary> /// <param name="g"></param> /// <param name="itemRect"></param> /// <param name="renderer"></param> internal virtual void OnPaintBackground(Graphics g, Rectangle itemRect, MetroRenderer renderer) { Color color = renderer.BackColor; //绘制背景颜色 switch (this._mouseState) { case EMouseState.Normal: case EMouseState.Leave: color = renderer.BackColor; break; case EMouseState.Move: case EMouseState.Up: color = renderer.EnterColor; break; case EMouseState.Down: color = renderer.DownColor; break; } //填充背景色 using (Brush brush = new SolidBrush(color)) { g.FillRectangle(brush, itemRect); } }
/// <summary> /// /// </summary> /// <param name="g"></param> /// <param name="itemRect"></param> /// <param name="renderer"></param> internal virtual void OnPaint(Graphics g, Rectangle itemRect, MetroRenderer renderer) { int height = itemRect.Height - 30; int width = itemRect.Width - 30; Rectangle iconRect = new Rectangle(15, itemRect.Y + 15, width, height); if (this.Icon != null)//绘制图标 { g.DrawImage(this.Icon, iconRect, 0, 0, this.Icon.Width, this.Icon.Height, GraphicsUnit.Pixel); } }