滚动时单元格datagridview上文本框中的值未更改

时间:2019-06-26 07:57:25

标签: c# datagridview

我有一个文本框usercontrol 现在,我正在对datagridview进行用户控制,将一个usercontrol文本框添加到datagridview的单元格中。 然后我将数据转储到datagridview中,很多数据将出现滚动状态,但是当我向下滚动时,文本框中的数据没有更改,它应该在下一部分中显示了数据。我需要帮助来解决这个问题。

我使用以下代码:例如,我添加了列(索引= 7)。

protected override void WndProc(ref Message m)
{
    base.WndProc(ref m);

    if (m.Msg.Equals(WM_NCPAINT))
    {
            for (int i = 0; i < this.RowCount; i++)
            {
                Rectangle cellRectangle = this.GetCellDisplayRectangle(7, i, true);
                var row = this.Rows[i];
                UCTextBox txt = new UCTextBox();
                txt.UCShowClear = false;
                txt.Visible = true;
                txt.ZText = row.Cells[7].Value.ToString();
                txt.Location = new Point(cellRectangle.X + 2, cellRectangle.Y + 1);
                txt.Size = new Size(cellRectangle.Width - 4, cellRectangle.Height - 4);
                this.Controls.Add(txt);
            }
    }
} 

它看起来像这样:

enter image description here

0 个答案:

没有答案