2016-04-28 873 views
0

我想用cefsharp ChromiumWebBrowser来创建我的程序。 在我的程序中,当我点击“加载”按钮时,ChromiumWebBrowser将加载一个网站,我将输入用户名和密码登录。 当我再次点击“加载”按钮时,我希望ChromiumWebBrowser清除所有内容,包括cookies,会话...并重新加载网站。CefSharp ChromiumWebBrowser私人浏览器C#winforms

在我的代码,当我点击“Load”按钮,我布置ChromiumWebBrowser实例并创建新的

 private void btnLoad_Click(object sender, EventArgs e) 
    { 
     foreach (Control ctr in splitContainer1.Panel2.Controls) 
      ctr.Dispose(); 
     CefSharp.WinForms.ChromiumWebBrowser wb = new CefSharp.WinForms.ChromiumWebBrowser("http://www........") 
     { 
      Dock = DockStyle.Fill 
     }; 
     splitContainer1.Panel2.Controls.Add(wb); 
    } 

但是Cookie,会话......不会被删除。 我试着命令:

CefSharp.Cef.Shutdown(); 

但它也关闭我的程序。 如何在加载新地址之前删除浏览数据?请帮帮我!非常感谢你!

+2

你分离使用'RequestContext' ChomiumWebBrowser'的'实例,默认使用'Global RequestContext'。您可以为每个实例创建一个新的实例,并将它们隔离。 'browser.RequestContext = new RequestContext();' – amaitland

回答

-1

此代码将清除所有的cookies 在WPF

C#:

class VkLogin : Window{ 
public VkLogin() { 
    InitializeComponent(); 
    WebView.Address = "https://oauth.vk.com..."; 
    CefSharp.ICookieManager m = Cef.GetGlobalCookieManager(); 
    m.DeleteCookies("", ""); 
} 
} 

XAML:

<Window> 
    <cefSharp:ChromiumWebBrowser x:Name="WebView"/> 
</Window> 
相关问题