// Returns the Run Time Id.
 //
 // The RunTimeID is a array of int with RID [0] set to 1 and RID [1] the hwnd
 // identifier. The remaining of the chain are values one per sub node in
 // the raw element tree.
 // Avalon and other none hwnd based elements have RunTimeIDs that never starts
 //  with '1'. This makes the RunTimeId for Win32 controls uniq.
 //
 // By default the _item data member is used as ID for each depth
 // in the element tree
 internal virtual int [] GetRuntimeId()
 {
     if (_fSubTree && !IsHwndElement())
     {
         // add the id for this level at the end of the chain
         return(Misc.AppendToRuntimeId(GetParent().GetRuntimeId(), _item));
     }
     else
     {
         // UIA handles runtimeID for the HWND part for us
         return(null);
     }
 }