Why are you using that code to replace an existing column in the first place? Why not just add the combo box column in the designer? I'm guessing that you are letting the grid create the columns when you bind data and then replacing one of the columns it creates. Don't do that. Create the column you want in the first place. If you set the DataPropertyName of the column then your data source will be correctly bound to it, even if AutoGenerateColumns is True. There's a demo in my CodeBank submission on the subject.