获取WebBrowser控件的back / fwd历史记录

在C#WinForms中,获取System.Windows.Forms.WebBrowser的后向/前向历史堆栈的正确方法是什么?

查看http://www.bsalsa.com/downloads.html 。 这是一系列Delphi组件(免费源代码,你可以在这里看到一个例子: http : //staruml.cvs.sourceforge.net/staruml/staruml/staruml/components/plastic-components/src/embeddedwb.pas ?revision = 1.1&view = markup – 它是starUML项目代码),除了其他方面,它们还有一种使用IE MSHTML接口获取历史记录,collections夹等的方法。 它是用Object Pascal编写的,但不应该太难以弄清楚发生了什么。 如果您下载“嵌入式Web浏览器组件包”,请查看EmbeddedWB_D2005 \ Source中的内容 – 那里有各种各样的好东西。

它看起来不太可能。

我的建议是捕获Navigated事件并维护自己的列表。 可能的问题是,当用户在浏览器中单击时,您不知道要展开堆栈。