title: DataGridView ComboBox column that will accept any text
body: <p>I want a column of a <code>DataGridView</code> to use a <code>ComboBoxStyle.DropDown</code> style ComboBox, where the user can either select one of the entries in the drop-down, or type arbitrary text.</p>
  
  <p>At the moment, I'm using the code from <a href="https://stackoverflow.com/a/30080684/">this answer</a> and I can type freely into the text box part of the ComboBox, but if I type something that isn't in the drop-down list then it isn't committed back to the data source and the field reverts to the original selection. Furthermore, if I programmatically set the text to something not in the drop-down list I get a <code>DataError</code> event "DataGridViewComboBoxCell value is not valid."</p>
  
  <p>I'm using data binding; the <code>DataGridView</code> itself is bound to a <code>BindingList&lt;T&gt;</code>.</p>
  
  <p>Unlike <a href="https://stackoverflow.com/questions/36679164/">this question</a> I don't want the free text added to the drop-down list.</p>
  
  <p>To be clear, the column data type is <code>string</code> and I don't want it validated against the drop-down list of the ComboBox (or anything else for that matter).</p>
  
  <p>(Do I have to create my own custom <code>DataGridViewColumn</code> descendent as described in <a href="https://msdn.microsoft.com/en-us/library/7tas5c80(v=vs.110).aspx" rel="nofollow noreferrer">How to: Host Controls in Windows Forms DataGridView Cells</a>?)</p>