【问题标题】:How to remove elements from a windows forms webbrowser control如何从 Windows 窗体 webbrowser 控件中删除元素
【发布时间】:2015-10-18 09:37:59
【问题描述】:

我想知道一种在 Windows 窗体的网络浏览器上删除网站元素的方法。我有这个代码:

namespace Browser
{
    public partial class Form1 : Form
    {
        public Form1()
        {
           InitializeComponent();
        }

        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            webBrowser1.Document.GetElementById("ads").Style = "display:none";
            webBrowser1.Document.GetElementById("navigation").Style = "display:none";
            webBrowser1.Document.GetElementById("donate").Style = "display:none";
            webBrowser1.Document.GetElementById("social_bookmarking_buttons").Style = "display:none";
        }
    }
}

您可能会注意到,我只是隐藏了元素,我想删除它们。感谢您的宝贵时间。

【问题讨论】:

    标签: c# html forms


    【解决方案1】:

    这对我来说可以删除元素。

    private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
        webBrowser1.Document.GetElementById("ads").OuterHtml = "";
        webBrowser1.Document.GetElementById("navigation").OuterHtml = "";
        webBrowser1.Document.GetElementById("donate").OuterHtml = "";
        webBrowser1.Document.GetElementById("social_bookmarking_buttons").OuterHtml = "";
    }
    

    【讨论】:

    • 谢谢,可以了。但我有一个问题,我正在处理的这个网站有一个通知,该通知仅在打开该网站 5 秒后出现。如果我在文档完成时将其删除,则通知不会被删除。你能帮忙解决这个问题吗?
    • 如果我是你,我将使用全局 System.Windows.Forms.Timer 对象来通知 5 秒已经过去。我会在DocumentCompleted开始计时并检查通知是否没有被移除,然后移除Timer.Tick事件处理程序中的元素。
    • 谢谢。我已经解决了这个问题。你能帮我解决这个问题吗?:stackoverflow.com/questions/33199399/….
    猜你喜欢
    • 1970-01-01
    • 2010-11-28
    • 2013-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 2020-04-28
    相关资源
    最近更新 更多