I mean - one source for all the data and another one - for rowheaders (of course, with different style). I know, that one can do the same thing for columnheaders, because each datagrid.column have it's own .header property, where I can put any control with it's own DataContext, for example. But what for rows? Of course, I can add one extra column and join 2 data sources on-the-fly. But both of them have it's own bindings. And if I just create another - separate one - it'll lose them.