(原)用WebBrowser瀏覽Office Web Apps Server,除去“下載”按鈕
對,沒錯,如果你按關鍵字找到這篇隨筆了,相信一定知道背景,以及我所說的是什么。
上一段子代碼。
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事件可能會被激活多次,并且直到最后一次也不能準確得到預期結果。

浙公網(wǎng)安備 33010602011771號