public void BeforeNavi(object pDisp, ref object URL, ref object Flags, ref object TargetFrameName, ref object PostData, ref object Headers, ref bool Cancel)
 {
     if (HistoryList.Count == 0)
     {
         HistoryList.Add(ShellClassID.IDFromName(ExplorerPath));
         CurrentIndex = 0;
     }
 }
 public void Navigate(object sender, string PathToNavigate)
 {
     try {
         PathToNavigate = ShellClassID.IDFromName(PathToNavigate);
         object obj = PathToNavigate;
         if (Directory.Exists(PathToNavigate) || PathToNavigate.Contains("::"))
         {
             if (ExplorerWindow.ReadyState == tagREADYSTATE.READYSTATE_COMPLETE)
             {
                 ExplorerWindow.Navigate2(obj);
             }
         }
     } catch (Exception) {
     }
 }