Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1052
  • Last Modified:

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

0
Nemesis_0001
Asked:
Nemesis_0001
  • 2
1 Solution
 
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
 
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
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.

Join & Write a Comment

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now