Hi Raptorix,
According to my understanding about your post, you problem is that when you filter the data the DataGridViewComboBoxColumn changed to DataGridViewTextBoxColumn, right? I looked through your code and found that you reset the DataSource for the DataGridView when you filter the data. This may be the reason why the DataGridViewComboBoxColumn changed to DataGridViewTextBoxColumn. You can try to set the AutoGenerateColumns property to false in the designer to see if you still have the problem.
Let me know if this helps, if not, could you please provide more detailed information?
Best regards.
Rong-Chun Zhang
Windows Forms General FAQs
Windows Forms Data Controls and Databinding FAQs