Пример #1
0
        void _View_CustomDrawCell(object sender, RowCellCustomDrawEventArgs e)
        {
            if (_ActiveFilter == string.Empty)
            {
                return;
            }
            int index = e.DisplayText.IndexOf(_ActiveFilter);

            if (index < 0)
            {
                return;
            }
            e.Handled = true;
            e.Appearance.FillRectangle(e.Cache, e.Bounds);
            MultiColorDrawStringParams args = new MultiColorDrawStringParams(e.Appearance);

            args.Bounds = e.Bounds;
            args.Text   = e.DisplayText;
            args.Appearance.Assign(e.Appearance);
            AppearanceObject         apperance    = _View.PaintAppearance.SelectedRow;
            CharacterRangeWithFormat defaultRange = new CharacterRangeWithFormat(0, e.DisplayText.Length, e.Appearance.ForeColor, e.Appearance.BackColor);
            CharacterRangeWithFormat range        = new CharacterRangeWithFormat(index, _ActiveFilter.Length, apperance.ForeColor, apperance.BackColor);

            args.Ranges = new CharacterRangeWithFormat[] { defaultRange, range };
            paint.MultiColorDrawString(e.Cache, args);
        }
Пример #2
0
 void DrawSelect(object sender, RowCellCustomDrawEventArgs e, string text)
 {
     int index = e.DisplayText.IndexOf(text);
     e.Handled = true;
     e.Appearance.FillRectangle(e.Cache, e.Bounds);
     MultiColorDrawStringParams args = new MultiColorDrawStringParams(e.Appearance);
     args.Bounds = e.Bounds;
     args.Text = e.DisplayText;
     args.Appearance.Assign(e.Appearance);
     AppearanceObject apperance = _View.PaintAppearance.SelectedRow;
     CharacterRangeWithFormat defaultRange = new CharacterRangeWithFormat(0, e.DisplayText.Length, e.Appearance.ForeColor, e.Appearance.BackColor);
     CharacterRangeWithFormat range = new CharacterRangeWithFormat(index, text.Length, apperance.ForeColor, apperance.BackColor);
     args.Ranges = new CharacterRangeWithFormat[] { defaultRange, range };
     paint.MultiColorDrawString(e.Cache, args);
 }