title: Checkbox in the header of a DataGridView in any column
body: <p>Actually I have solved the problem of having checkbox in the header of a DGV, here is the code</p>
  
  <pre><code>Rectangle rect = dataGridView1.GetCellDisplayRectangle(0, -1, true);
          rect.Y = 3;
          rect.X = rect.Location.X + (rect.Width/4);
          CheckBox checkboxHeader = new CheckBox();
          checkboxHeader.Name = "checkboxHeader";
          //datagridview[0, 0].ToolTipText = "sdfsdf";
          checkboxHeader.Size = new Size(18, 18);
          checkboxHeader.Location = rect.Location;
          checkboxHeader.CheckedChanged += new EventHandler(checkboxHeader_CheckedChanged);
          dataGridView1.Controls.Add(checkboxHeader);    
  </code></pre>
  
  <p>Actually First I add a column to my DGV which is a DataGridViewCheckBoxColumn and then in the load of the form adding the code above, my problem is as you can see below for the first column it works great since I can set the rect.X in the code for that column but what about the notifier column how can I know where is the position of the header of this column programmatically since the log column can change through maximizing and this stuffs.</p>
  
  <p><img src="https://i.stack.imgur.com/DJGad.png" alt="enter image description here">
  Finally, How can I know for example what is the position of the header of the column[3] programatically....
  Thanks in advance</p>