private void WalkObject(TreeNode parent, IntPtr o) { uint c = 0; DatatreeDotNet.dt_object_member_count(datatree, o, ref c); EnsureNodeCount(parent, (int)c); for (uint i = 0; i < c; i++) { IntPtr k = IntPtr.Zero; IntPtr v = IntPtr.Zero; DatatreeDotNet.dt_object_member_at(datatree, o, i, ref k, ref v); WalkPair(parent, k, v, i); } }