Adding new row to bound datatable

Hi,

I have a datatable which is bound to a combobox and several textboxes.
The combobox is used to browse through the items, and the textboxes to modify/view the data.
This all works fine.

However, when adding a new row to the table, the combobox shows this new row, yet the bindingcontext does not change position when I select the value in the combobox. Therefore I cannot modify the new row added.

Any help would be apprciated,

Thanks.
The binding for example;
 
            medicinesTableAdapter1.Fill(mediupDataSet1.medicines);
 
            cboxSelect.DataSource = mediupDataSet1;
            cboxSelect.DisplayMember = "Medicines.english_name";
            cboxSelect.ValueMember = "Medicines.ID";
 
            tboxID.DataBindings.Add("Text", mediupDataSet1, "Medicines.ID");
            tboxActiveComponents.DataBindings.Add("Text", mediupDataSet1, "Medicines.active_component");
 
Adding a new row:
           
 this.BindingContext[mediupDataSet1, "Medicines"].EndCurrentEdit();
            DataRow _dr = mediupDataSet1.medicines.NewRow();
            _dr.BeginEdit();
            _dr["ID"] = (uint)(mediupDataSet1.medicines.Compute("Max(id)", "")) + 1;
            _dr["hebrew_name"] = "êèÕäÔ ×ÓéÔ";
            _dr.EndEdit();
            mediupDataSet1.medicines.Rows.Add(_dr);

Open in new window

Nemesis_0001Asked:
Who is Participating?
 
Wardy_01Commented:
sorry my bad ... read it wrong.

If you design this as per the Microsoft recommended approach you should have all your databinding code in a databind method.

That means you do things in this order ...

1. load
2. databind
3  edit
4  databind
5  finish

you have to be careful with the order of events though, i used to get tripped up all the time with this stuff. Put a breakpoint on your value setting statements to make sure the new values are being correctly picked up.

And of course don't forget to call databind when you're done ... i can't see that anywhere.
Databind should update your binding context assuming your underlying dataset has been modified correctly.

Migth be worth checking the dataset after you modify it to make sure the data has been correctly committed.
0
 
Wardy_01Commented:
rebind the grid to the newly modified datatable.
then set the selectedindex to the newly created row.
0
 
Nemesis_0001Author Commented:
There is no grid, only a combobox and some textboxes.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.