Chciałem przedstawić całościowo problem, ale zajęłoby mi to zbyt dużo tekstu, więc opiszę co chcę zrobić. Mam to zrobione i niby dziala, ale nie jestem pewien, czy działa na 100% poprawnie. Otóż:
Mam dataGridView połączony z dataSet, który wyświetla kolumny np. id, produkt_id, ilosc.
I chcę, aby do wyboru produktu służyła kolumna produkt_id. produkt_id odnosi się do innego dataseta, w którym znajduje się id i nazwa. Tworzę zatem comboboxcolum:
DataGridViewComboBoxColumn cmb_produkt = new DataGridViewComboBoxColumn();
DataGridViewComboBoxColumn cmb_kontrahent = new DataGridViewComboBoxColumn();
cmb_produkt.DataSource = ds_magazyn.Tables[0];
cmb_produkt.HeaderText = "produkt";
cmb_produkt.ValueMember = "id";
cmb_produkt.DisplayMember = "nazwa";
I teraz chcę aby combobox column stanął na miejscu kolumny produkt_id. Tzn, wybieram produkt, on przypisuje sobie wartość tego id. Usuwam więc kolumnę produkt id i wstawiam w jej index comboBox, ale... produkt_id zamiast zniknąć - przesuwa się na ostatnią pozycję DGV!, więc mamy o jedną kolumnę więcej.
Jak to zrobić poprawnie?