private void buildlist(RPFLib.Common.Directory dir) { masterlist.Clear(); currentDir = dir; //Setup return dir if (dir.ParentDirectory != null) { RPFLib.Common.ReturnDir returnDir = new ReturnDir(); returnDir.Tag = dir.ParentDirectory; masterlist.Add(returnDir); } foreach (fileSystemObject item in dir) { if (item.IsDirectory) { var subdir = item as RPFLib.Common.Directory; masterlist.Add(item); } else { var subFile = item as RPFLib.Common.File; masterlist.Add(item); } } setViewObjects(masterlist); }