Пример #1
0
            protected override void OnDrawItem(DrawItemEventArgs e)
            {
                if (e.Index == -1)
                {
                    return;
                }

                ColorComboBoxItem ccbi = Items[e.Index] as ColorComboBoxItem;

                Rectangle r = e.Bounds;

                r.X = r.X + 24;

                if ((e.State & DrawItemState.Selected) == DrawItemState.Selected)
                {
                    e.Graphics.FillRectangle(ThemeEngine.Current.ResPool.GetSolidBrush(Color.Blue), e.Bounds);                         // bot blue
                    e.Graphics.FillRectangle(ThemeEngine.Current.ResPool.GetSolidBrush(ccbi.Color), e.Bounds.X + 3, e.Bounds.Y + 3, e.Bounds.X + 16, e.Bounds.Bottom - 3);
                    e.Graphics.DrawRectangle(ThemeEngine.Current.ResPool.GetPen(Color.Black), e.Bounds.X + 2, e.Bounds.Y + 2, e.Bounds.X + 17, e.Bounds.Bottom - 3);
                    e.Graphics.DrawString(ccbi.Name, this.Font, ThemeEngine.Current.ResPool.GetSolidBrush(Color.White), r);
                }
                else
                {
                    e.Graphics.FillRectangle(ThemeEngine.Current.ResPool.GetSolidBrush(Color.White), e.Bounds);
                    e.Graphics.FillRectangle(ThemeEngine.Current.ResPool.GetSolidBrush(ccbi.Color), e.Bounds.X + 3, e.Bounds.Y + 3, e.Bounds.X + 16, e.Bounds.Bottom - 3);
                    e.Graphics.DrawRectangle(ThemeEngine.Current.ResPool.GetPen(Color.Black), e.Bounds.X + 2, e.Bounds.Y + 2, e.Bounds.X + 17, e.Bounds.Bottom - 3);
                    e.Graphics.DrawString(ccbi.Name, this.Font, ThemeEngine.Current.ResPool.GetSolidBrush(Color.Black), r);
                }
            }
Пример #2
0
            protected override void OnSelectedIndexChanged(EventArgs e)
            {
                ColorComboBoxItem ccbi = Items[SelectedIndex] as ColorComboBoxItem;

                selectedColor = ccbi.Color;

                fontDialog.Color = selectedColor;
            }