Hierachy of nodes in the nesting looks like following:
Nesting:
-------------------------------
FlyGrid.Rows.RootNode
|[Items]
|- NestedGridNode
| |- RootNode (and nested viewport Rows.RootNode)
| | |[Items]
| | |-NodeBase(or NestedGridNode if second level of nesting is established)
|- NestedGridNode
|- NestedGridNode
Without nesting:
-------------------------------
FlyGrid.Rows.RootNode
|[Items]
|- Node
| |[Items]
| |-Node
| |-Node
| |-Node
|- Node
|- Node
|- Node
In this case Node in the nested grid has zero level (Depth=0), and its children will have Depth=1 etc.
Utility function GetOverallDepth helps to determine overall depth to get certain source of data.