public override void Draw(Microsoft.Xna.Framework.GameTime gameTime) { //Fill Background SpriteBatch.Draw(fillTexture, Bounds, color); Color topLeftColor = new Color(color.ToVector3() * 1.20f); Color bottomRightColor = new Color(color.ToVector3() * 0.80f); if (borderStyle != BorderStyle.BorderNone) { if (borderStyle == BorderStyle.Border3d) { //Left Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X + 1, Bounds.Y + 1, 1, Bounds.Height), topLeftColor); //Bottom Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X + 1, Bounds.Y + Bounds.Height - 1, Bounds.Width, 1), bottomRightColor); //Top Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X + 1, Bounds.Y + 1, Bounds.Width - 1, 1), topLeftColor); //Right Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X + Bounds.Width - 1, Bounds.Y + 1, 1, Bounds.Height - 1), bottomRightColor); } //Left Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X, Bounds.Y, 1, Bounds.Height), Color.DarkSlateGray); //Bottom Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X, Bounds.Y + Bounds.Height, Bounds.Width + 1, 1), Color.DarkSlateGray); //Top Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X, Bounds.Y, Bounds.Width, 1), Color.DarkSlateGray); //Right Border SpriteBatch.Draw(fillTexture, new Rectangle(Bounds.X + Bounds.Width, Bounds.Y, 1, Bounds.Height), Color.DarkSlateGray); } base.Draw(gameTime); }