A: 

Update: If your DataTable itself is called "Sales.SalesContact", you could try setting the DataGridView.DataSource property directly to the DataTable (instead of the DataSet):

Dim salesContactTable As DataTable = dataSet.Tables("Sales.SalesContact")
dataGridView.DataSource = salesContactTable

So you're saying you have a DataSet called "Sales", which contains a table called "SalesContact"?

Did you try setting your DataGridView.DataSource property to your "Sales" DataSet and DataGridView.DataMember to simply "SalesContact"?

Dan Tao
Yes. Tried that.
<NewDataSet> <Sales.SalesContact> <SalesContactID>1</SalesContactID> <Name>Jimmy</Name> <ReasonType>Damaged</ReasonType> <ModifiedDate>2010-01-05T00:00:00+00:00</ModifiedDate> </Sales.SalesContact> </NewDataSet>
@user323186: I see. So your table itself is called "Sales.SalesContact"?
Dan Tao
yes. exactly. any ideas?
@user323186: Did you try my updated suggestion?
Dan Tao
just tried that. unfortunately the same result. Child list for field SalesContact cannot be created. So to confirm I did it correctly I did: Dim salesContactTable As DataTable = dsTableContents.Tables("Sales.SalesContact"), then associated datasource to salesContactTable and datamember to SalesContact. Any other suggestions?
@user323186: Sorry for all the failed attempts. But my suggestion was a *bit* different from what you just said; I was suggesting to set the `DataSource` to the table (as you did) **but leave `DataMember` blank**; don't assign it to anything. What happens when you try that?
Dan Tao
Its looking good. Thank you very much. Strange tho, as i tried that before with the datasource and it didnt work, but fine when I used the dataTable. Would love to know why. But anywho, thank you.