public override void DrawItem(DrawItemEventArgs e) { var item = Control.Items.Cast <PointOfSaleForm.ProductListBoxItem>().ElementAtOrDefault(e.Index); if (item == null) { return; } e.Graphics.SetClip(e.Bounds); var backColor = e.State.HasFlag(DrawItemState.Selected) ? ControlPaint.Light(ColorScheme.PrimaryColor, 0.05f) : e.BackColor; using (var brush = new SolidBrush(backColor)) { e.Graphics.FillRectangle(brush, e.Bounds); } using (var sb = new SolidBrush(GraphicUtils.ForegroundColorForBackground(backColor))) { e.Graphics.DrawString(_translation.TranslateMultilineResult(item.TextValue), Control.Font, sb, e.Bounds.OffsetAndReturn(5, 0), _centerVerticalStringFormat); } e.Graphics.SetClip(Rectangle.Empty); }
public override void DrawItem(SidebarControl c, Graphics g, Size itemSize, bool isSelected) { using (var sb = new SolidBrush(isSelected ? GraphicUtils.ForegroundColorForBackground(c.ColorScheme.SecondaryColor) : ForeColor)) { using (var format = new StringFormat { LineAlignment = StringAlignment.Center, }) { g.DrawString(Text, c.Font, sb, new Rectangle(SIDE_OFFSET, 0, itemSize.Width, itemSize.Height), format); } } }