The DataContext can be whatever you want it to be. It doesn't have to be a collection. The property is available on all WPF controls.
In one of my WPF apps, I have the DataContext set to an instance of a DataSet, and the bindings refer to the tables inside.
Yes, I understand, ok I'll have to test with the collection and see how it goes.
On a sidenote, when doing "SELECT * FROM TABLE1 ; SELECT * FROM TABLE2" I can get two tables out. Is it possible to get those two in a DataSet somehow? ( bit offtopic question but I thought you might know it. )