對,沒錯,若是你按關鍵字找到這篇隨筆了,相信必定知道背景,以及我所說的是什麼。html
上一段子代碼。web
private void timerHideButton_Tick(object sender, EventArgs e) { try { HtmlDocument htmlDoc = webBrowser.Document; if (webBrowser.Document != null) htmlDoc = webBrowser.Document.Window.Frames["wacframe"].Document; if (htmlDoc == null) return; var toolBar = htmlDoc.GetElementById("PptUpperToolbar.LeftButtonDock"); //PPT、PPTX if (toolBar == null) toolBar = htmlDoc.GetElementById("stripLeft"); //DOC、DOCX、PDF if (toolBar == null) toolBar = htmlDoc.GetElementById("m_excelWebRenderer_ewaCtl_stripLeft"); //XLS、XLSX if (toolBar != null) { toolBar.InnerHtml = ""; timerHideButton.Enabled = false; } } catch (Exception ex) { Console.WriteLine(ex.Message); } }
張三問了:還用個Timer,不科學,你應該把代碼放到
webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e);
回答:原先我也是這麼想的,可是、但是由於 iframe 的緣由,Completed事件可能會被激活屢次,而且直到最後一次也不能準確獲得預期結果。
ide