将复选框添加到C#中的Datagridview标题,并使用change scrolbar更改复选框的位置
我使用这段代码在Datagridview的标题中找到一个复选框。但随着datagridview的scrolbar的更改,复选框的位置也更改了将复选框添加到C#中的Datagridview标题,并使用change scrolbar更改复选框的位置,c#,checkbox,datagridview,C#,Checkbox,Datagridview,我使用这段代码在Datagridview的标题中找到一个复选框。但随着datagridview的scrolbar的更改,复选框的位置也更改了 // customize dataviewgrid, add checkbox column DataGridViewCheckBoxColumn checkboxColumn = new DataGridViewCheckBoxColumn(); checkboxColumn.Width = 30;
// customize dataviewgrid, add checkbox column
DataGridViewCheckBoxColumn checkboxColumn = new DataGridViewCheckBoxColumn();
checkboxColumn.Width = 30;
checkboxColumn.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
dataGridView1.Columns.Insert(0, checkboxColumn);
// add checkbox header
Rectangle rect = dataGridView1.GetCellDisplayRectangle(0, -1, true);
// set checkbox header to center of header cell. +1 pixel to position correctly.
rect.X = rect.Location.X + 8;
rect.Y = rect.Location.Y + 10;
rect.Width = rect.Size.Width;
rect.Height = rect.Size.Height;
CheckBox checkboxHeader = new CheckBox();
checkboxHeader.Name = "checkboxHeader";
checkboxHeader.Size = new Size(15, 15);
checkboxHeader.Location = rect.Location;
checkboxHeader.CheckedChanged += new EventHandler(checkboxHeader_CheckedChanged);
dataGridView1.Controls.Add(checkboxHeader);
像这样的图片:
这很容易。我使用这个代码并解决了它
dataGridView1.Columns[0].Frozen = true;
您提到“我使用此代码”,但我在您的帖子中没有看到任何代码。很抱歉,我插入了此代码。不理解您的问题,您在列的标题中添加了一个复选框。滚动条的哪些方面需要帮助?当滚动条移动时,标题中复选框的位置也会改变。我想确定复选框在标题中的位置。不要添加复选框,画一个。