public void LoadFile(String s) { if (s == null || s.Trim().Length == 0) { navi = ""; } else if (Site == null) { bwLoader.RunWorkerAsync(s); } else { IOleClientSite pClientSite = (IOleClientSite)Site.GetService(new AntiMoniker().GetType()); if (pClientSite != null) { IMoniker pimkDL = null; try { if (pimkDL == null) { IBindHost pBindHost = (IBindHost)pClientSite; pBindHost.CreateMoniker(s, null, out pimkDL, 0); } if (pimkDL == null) { IMoniker pimkName = null; pClientSite.GetMoniker(OLEGETMONIKER_FORCEASSIGN, OLEWHICHMK_CONTAINER, out pimkName); try { int chEaten; pimkName.ParseDisplayName(null, pimkName, s, out chEaten, out pimkDL); } finally { Marshal.ReleaseComObject(pimkName); } } if (pimkDL != null) { pimkDL.GetDisplayName(null, null, out title); if (!String.IsNullOrEmpty(title)) { s = title; } } } finally { Marshal.ReleaseComObject(pimkDL); } } bwLoader.RunWorkerAsync(s); } }
public object GetMoniker(int dwAssign, int dwWhichMoniker) { Debug.Print("IOleClientSite.GetMoniker"); return(_baseIOleClientSite.GetMoniker(dwAssign, dwWhichMoniker)); }