Good old dunfiddlin, thinks he knows everything as usual. The OP has specified that they used the Data Source wizard, meaning that they have a typed DataSet. As a result, all the type names and method names have been generated specifically for the OP's data and we don't know what they are. That would explain why I used example names and specifically stated that the names the OP needed to use would be different. The code you have provided is for an untyped DataSet, so it ignores the features provided by the typed DataSet and therefore renders the creation of a typed DataSet pointless. It will work but it is not the code that should be used in this case.
If the OP had cared to look they would have seen that each typed DataTable has the NewRow method inherited from its DataTable base class and it also has a NewSomeSpecificRow method as well, where the SomeSpecific part depends on the table it was generated from. Where the NewRow method returns an untyped DataRow, the specific method returns a typed DataRow, thus providing you the ability to use the features specific to that type. For example, if I was to create a Person table with FirstName and LastName columns then using a typed DataSet for that would look like this:
vb.net Code:
Dim table = Me.ExampleDataSet.Person
Dim row = table.NewPersonRow()
row.FirstName = "Joe"
row.LastName = "Bloggs"
table.AddPersonRow(row)
Notice how that code EXACTLY follows the pattern that I provided earlier but the names are specific to the table in my database. That's why I was not able to provide specific names previously and why I specifically stated that the names would be different in each case. If anyone would care to simply type the dot followed by New or Add then Intellisense would display what matching methods were available. If you're going to use a typed DataSet then use a typed DataSet. If you're going to use dunfiddlin's code then you may as well not use a typed DataSet in the first place. Hopefully there's more than one person who can learn something from this.