Представление сетки данных Row Post краска не поддерживается должным образом, когда мы используем горизонтальную прокрутку в winform c # - PullRequest
0 голосов
/ 18 октября 2019

Я использую событие рисования строк в виде сетки данных, чтобы выделить текущую выбранную строку в моем виде сетки данных. Это прекрасно работает, когда мы выбираем конкретную строку. но когда мы пытаемся прокрутить горизонтально, рисование строк разбивается на множество частей, как я показал на картинке, и это выглядит странно. как я могу решить это? любые решения будут очень полезны для меня.

Это мой код:

public override void grdList_RowPostPaint (отправитель объекта, DataGridViewRowPostPaintEventArgs e)

    {
        if (grdList.Rows[e.RowIndex].Selected)
        {
            using (Pen pen = new Pen(Color.FromArgb(30, 144, 255)))
            {
                int penWidth = 1;
                pen.Width = penWidth;
                int x = e.RowBounds.Left + (penWidth / 2);
                int y = e.RowBounds.Top + (penWidth / 2);
                int width = e.RowBounds.Width - penWidth;
                int height = e.RowBounds.Height - penWidth;
                e.Graphics.DrawRectangle(pen, x, y, width, height);
            }

        }

    }   

Mywindowsform

...