Personally I dislike data grids as UI tools. I prefer the conventional ListView
in Detail mode.
DataGrids should be used if you want to enable mass inputing of data - it should not be used for read-only purposes unless you are using a powerful 3rd party grid. (Like Infragistics which provides great functionality but is not free).
I assume the view you want is a Summary-Detail sort of view, where you display a summary of the elements in the tree and their details on the grid once each node is clicked.
As Gnostus suggested - you should use the MVC design pattern.
If you can focus your question a bit more - I'm sure you can get more detailed answers.
Added:
So first let me suggest a bit of lite reading - I found in wikipedia this item about the MVC design pattern. It also offers a few .NET frameworks that specialize with MVC - I'm not familiar with any of them so I cannot comment on them.
As with any OO project - I suggest you create an Object Model of your elements.
Example: Building --> floor --> room.
As for the UI (i.e. the View), DataGrid
input validations can be a pain - from the sound of it you don't need a grid's abilities - and would rather display the room's properties using a list view and have a separate dialog for adding new rows to the table.