public override string ToString()
 {
     if (CategoryPath.Count < 2)
     {
         return("");
     }
     return(new String(' ', CategoryPath.Count - 2) + CategoryPath.Last <String>());
 }
 public List<String> MakePath()
 {
     if (CategoryPath.Count > 1 && CategoryPath.Last() == ItemsDir) return new List<string>() { "." };
     List<String> cnames = new List<string>();
     foreach (string s in CategoryPath) 
     {
         removeInvalidPathChars.Replace(s, "_");
         cnames.Add(s);
     }
     cnames.Remove(ItemsDir);
     return cnames;
 }
 public override string ToString()
 {
     if (CategoryPath.Count < 2) return "";
     return new String(' ', CategoryPath.Count - 2) + CategoryPath.Last<String>();
 }