日期:2014-05-17 浏览次数:20809 次
public partial class BrowserForm : Form { #region Fields private bool responsed; #endregion #region Constructors public BrowserForm() { InitializeComponent(); Application.Idle += new EventHandler(Application_Idle); this.webBrowser.DocumentTitleChanged += new EventHandler(webBrowser_DocumentTitleChanged); SHDocVw.WebBrowser_V1 browser = (SHDocVw.WebBrowser_V1)this.webBrowser.ActiveXInstance; browser.NewWindow += new SHDocVw.DWebBrowserEvents_NewWindowEventHandler(OnBrowserNewWindow); } #endregion #region Functions private void Application_Idle(object sender, EventArgs e) { this.pictureBoxBack.Enabled = this.webBrowser.CanGoBack; this.pictureBoxForward.Enabled = this.webBrowser.CanGoForward; } private void pictureBox_MouseEnter(object sender, EventArgs e) { PictureBox pictureBox = sender as PictureBox; if (pictureBox.Enabled) { pictureBox.BackColor = Color.FromArgb(222, 222, 222); } } private void pictureBox_MouseDown(object sender, MouseEventArgs e) { PictureBox pictureBox = sender as PictureBox; if (pictureBox.Enabled) { pictureBox.BackColor = Color.FromArgb(192, 192, 192); } } private void pictureBox_MouseLeave(object sender, EventArgs e) { PictureBox pictureBox = sender as PictureBox; pictureBox.BackColor = SystemColors.Control; } private void pictureBoxBack_Click(object sender, EventArgs e) { this.webBrowser.GoBack(); } private void pictureBoxForward_Click(object sender, EventArgs e) { this.webBrowser.GoForward(); } private void textBoxAddress_KeyDown(object sender, KeyEventArgs e) { Keys keys = e.KeyCode; if (keys == Keys.Enter) { CommandGo(); } } private void pictureBoxGo_Click(object sender, EventArgs e) { CommandGo(); } private void webBrowser_DocumentTitleChanged(object sender, EventArgs e) { string title = this.webBrowser.DocumentTitle; if (string.IsNullOrEmpty(title)) { this.Text = "浏览器"; } else { this.Text = string.Format("{0} - 浏览器", title); } } private void webBrowser_Navigated(object sender, WebBrowserNavigatedEventArgs e) { Uri url = e.Url; if (url.Scheme == Uri.UriSchemeHttp) { this.textBoxAddress.Text = url.AbsoluteUri; } } private void OnBrowserNewWindow(string URL, int Flags, string TargetFrameName, ref object PostData, string Headers, ref bool Processed) { Processed = true; this.webBrowser.Navig