Csharp/C Sharp/GUI Windows Form/Web Browser
Версия от 15:31, 26 мая 2010; (обсуждение)
My Web Browser
/*
Professional Windows GUI Programming Using C#
by Jay Glynn, Csaba Torok, Richard Conway, Wahid Choudhury,
Zach Greenvoss, Shripad Kulkarni, Neil Whitlow
Publisher: Peer Information
ISBN: 1861007663
*/
using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
namespace MyWebBrowser
{
/// <summary>
/// Summary description for MyWebBrowser.
/// </summary>
public class MyWebBrowser : System.Windows.Forms.Form
{
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.TextBox addressBox;
private System.Windows.Forms.Button goButton;
private AxSHDocVw.AxWebBrowser axWebBrowser1;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ruponentModel.Container components = null;
public MyWebBrowser()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
axWebBrowser1.GoHome();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(MyWebBrowser));
this.panel1 = new System.Windows.Forms.Panel();
this.goButton = new System.Windows.Forms.Button();
this.addressBox = new System.Windows.Forms.TextBox();
this.panel2 = new System.Windows.Forms.Panel();
this.axWebBrowser1 = new AxSHDocVw.AxWebBrowser();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
((System.ruponentModel.ISupportInitialize)(this.axWebBrowser1)).BeginInit();
this.SuspendLayout();
//
// panel1
//
this.panel1.Controls.AddRange(new System.Windows.Forms.Control[] {
this.goButton,
this.addressBox});
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(408, 40);
this.panel1.TabIndex = 0;
//
// goButton
//
this.goButton.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right);
this.goButton.Image = ((System.Drawing.Bitmap)(resources.GetObject("goButton.Image")));
this.goButton.Location = new System.Drawing.Point(368, 8);
this.goButton.Name = "goButton";
this.goButton.Size = new System.Drawing.Size(32, 24);
this.goButton.TabIndex = 1;
this.goButton.Click += new System.EventHandler(this.goButton_Click);
//
// addressBox
//
this.addressBox.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.addressBox.Location = new System.Drawing.Point(8, 8);
this.addressBox.Name = "addressBox";
this.addressBox.Size = new System.Drawing.Size(344, 20);
this.addressBox.TabIndex = 0;
this.addressBox.Text = "";
//
// panel2
//
this.panel2.Anchor = (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.panel2.Controls.AddRange(new System.Windows.Forms.Control[] {
this.axWebBrowser1});
this.panel2.Location = new System.Drawing.Point(8, 48);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(392, 240);
this.panel2.TabIndex = 1;
//
// axWebBrowser1
//
this.axWebBrowser1.ContainingControl = this;
this.axWebBrowser1.Dock = System.Windows.Forms.DockStyle.Fill;
this.axWebBrowser1.Enabled = true;
this.axWebBrowser1.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("axWebBrowser1.OcxState")));
this.axWebBrowser1.Size = new System.Drawing.Size(392, 240);
this.axWebBrowser1.TabIndex = 0;
//
// MyWebBrowser
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(408, 293);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.panel2,
this.panel1});
this.Name = "MyWebBrowser";
this.Text = "MyWebBrowser";
this.panel1.ResumeLayout(false);
this.panel2.ResumeLayout(false);
((System.ruponentModel.ISupportInitialize)(this.axWebBrowser1)).EndInit();
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new MyWebBrowser());
}
private void goButton_Click(object sender, System.EventArgs e)
{
object o = null;
object address = (object)addressBox.Text;
axWebBrowser1.Navigate2(ref address, ref o, ref o, ref o, ref o);
}
}
}
<A href="http://www.nfex.ru/Code/CSharpDownload/MyWebBrowser.zip">MyWebBrowser.zip( 126 k)</a>
Simple WebBrowser
/*
Professional Windows GUI Programming Using C#
by Jay Glynn, Csaba Torok, Richard Conway, Wahid Choudhury,
Zach Greenvoss, Shripad Kulkarni, Neil Whitlow
Publisher: Peer Information
ISBN: 1861007663
*/
using System;
using System.Windows.Forms;
using System.Drawing;
using AxSHDocVw;
public class WebBrowser : Form
{
private AxWebBrowser browser;
private Button goButton;
private TextBox addressBox;
private Panel panel1;
private Panel panel2;
public WebBrowser()
{
panel1 = new Panel();
panel2 = new Panel();
browser = new AxWebBrowser();
browser.BeginInit();
this.SuspendLayout();
panel1.SuspendLayout();
panel2.SuspendLayout();
this.Text = "MyWebBrowser";
panel1.Size = new Size(300, 30);
panel1.Dock = DockStyle.Top;
panel2.Size = new Size(285,240);
panel2.Location = new Point(5, 31);
panel2.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
browser.Dock = DockStyle.Fill;
addressBox = new TextBox();
addressBox.Size = new Size(260, 20);
addressBox.Location = new Point(5,5);
addressBox.Anchor = AnchorStyles.Top | AnchorStyles.Right | AnchorStyles.Left;
goButton = new Button();
goButton.Image = Image.FromFile("Arrow.ico");
goButton.Location = new Point(270,5);
goButton.Size = new Size(20,20);
goButton.Anchor = AnchorStyles.Top | AnchorStyles.Right;
panel1.Controls.AddRange(new Control[] { addressBox, goButton });
panel2.Controls.Add(browser);
this.Controls.AddRange(new Control[] { panel1, panel2 });
browser.EndInit();
panel1.ResumeLayout();
panel2.ResumeLayout();
this.ResumeLayout();
goButton.Click += new EventHandler(goButton_Click);
browser.GoHome();
}
private void goButton_Click(object sender, EventArgs e)
{
object o = null;
browser.Navigate(addressBox.Text, ref o, ref o, ref o, ref o);
}
[STAThread]
public static void Main()
{
Application.Run(new WebBrowser());
}
}
WebBrowser in action
using System;
using System.Collections.Generic;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
public class Form1 : Form
{
private System.Windows.Forms.WebBrowser webBrowser1;
public Form1() {
InitializeComponent();
webBrowser1.Navigate("http://www.nfex.ru");
}
private void InitializeComponent()
{
this.webBrowser1 = new System.Windows.Forms.WebBrowser();
this.SuspendLayout();
//
// webBrowser1
//
this.webBrowser1.Dock = System.Windows.Forms.DockStyle.Fill;
this.webBrowser1.Location = new System.Drawing.Point(0, 0);
this.webBrowser1.Name = "webBrowser1";
this.webBrowser1.Size = new System.Drawing.Size(600, 600);
this.webBrowser1.TabIndex = 0;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(600, 600);
this.Controls.Add(this.webBrowser1);
this.Text = "Split Window";
this.ResumeLayout(false);
}
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.Run(new Form1());
}
}
Web Browser usual actions
using System;
using System.Collections.Generic;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
public class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void webBrowser1_DocumentTitleChanged(object sender, EventArgs e)
{
this.Text = webBrowser1.DocumentTitle.ToString();
}
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)13)
{
webBrowser1.Navigate(textBox1.Text);
}
}
private void webBrowser1_Navigated(object sender,
WebBrowserNavigatedEventArgs e)
{
textBox1.Text = webBrowser1.Url.ToString();
}
private void Form1_Load(object sender, EventArgs e)
{
buttonBack.Enabled = false;
buttonForward.Enabled = false;
buttonStop.Enabled = false;
}
private void buttonBack_Click(object sender, EventArgs e)
{
webBrowser1.GoBack();
textBox1.Text = webBrowser1.Url.ToString();
}
private void buttonForward_Click(object sender, EventArgs e)
{
webBrowser1.GoForward();
textBox1.Text = webBrowser1.Url.ToString();
}
private void buttonStop_Click(object sender, EventArgs e)
{
webBrowser1.Stop();
}
private void buttonHome_Click(object sender, EventArgs e)
{
webBrowser1.GoHome();
textBox1.Text = webBrowser1.Url.ToString();
}
private void buttonRefresh_Click(object sender, EventArgs e)
{
webBrowser1.Refresh();
}
private void buttonSubmit_Click(object sender, EventArgs e)
{
webBrowser1.Navigate(textBox1.Text);
}
private void webBrowser1_CanGoBackChanged(object sender, EventArgs e)
{
if (webBrowser1.CanGoBack == true)
{
buttonBack.Enabled = true;
}
else
{
buttonBack.Enabled = false;
}
}
private void webBrowser1_CanGoForwardChanged(object sender, EventArgs e)
{
if (webBrowser1.CanGoForward == true)
{
buttonForward.Enabled = true;
}
else
{
buttonForward.Enabled = false;
}
}
private void webBrowser1_Navigating(object sender,
WebBrowserNavigatingEventArgs e)
{
buttonStop.Enabled = true;
}
private void webBrowser1_DocumentCompleted(object sender,
WebBrowserDocumentCompletedEventArgs e)
{
buttonStop.Enabled = false;
}
private void InitializeComponent()
{
this.webBrowser1 = new System.Windows.Forms.WebBrowser();
this.textBox1 = new System.Windows.Forms.TextBox();
this.buttonSubmit = new System.Windows.Forms.Button();
this.buttonRefresh = new System.Windows.Forms.Button();
this.buttonHome = new System.Windows.Forms.Button();
this.buttonStop = new System.Windows.Forms.Button();
this.buttonForward = new System.Windows.Forms.Button();
this.buttonBack = new System.Windows.Forms.Button();
this.SuspendLayout();
this.webBrowser1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.webBrowser1.Location = new System.Drawing.Point(15, 74);
this.webBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
this.webBrowser1.Size = new System.Drawing.Size(700, 339);
this.webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(this.webBrowser1_DocumentCompleted);
this.textBox1.Location = new System.Drawing.Point(14, 47);
this.textBox1.Size = new System.Drawing.Size(399, 20);
this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBox1_KeyPress);
this.buttonSubmit.Location = new System.Drawing.Point(419, 18);
this.buttonSubmit.Size = new System.Drawing.Size(75, 49);
this.buttonSubmit.Text = "Submit";
this.buttonSubmit.UseVisualStyleBackColor = true;
this.buttonSubmit.Click += new System.EventHandler(this.buttonSubmit_Click);
this.buttonRefresh.Location = new System.Drawing.Point(338, 18);
this.buttonRefresh.Size = new System.Drawing.Size(75, 23);
this.buttonRefresh.Text = "Refresh";
this.buttonRefresh.UseVisualStyleBackColor = true;
this.buttonRefresh.Click += new System.EventHandler(this.buttonRefresh_Click);
this.buttonHome.Location = new System.Drawing.Point(257, 18);
this.buttonHome.Size = new System.Drawing.Size(75, 23);
this.buttonHome.Text = "Home";
this.buttonHome.UseVisualStyleBackColor = true;
this.buttonHome.Click += new System.EventHandler(this.buttonHome_Click);
this.buttonStop.Location = new System.Drawing.Point(176, 18);
this.buttonStop.Size = new System.Drawing.Size(75, 23);
this.buttonStop.Text = "Stop";
this.buttonStop.UseVisualStyleBackColor = true;
this.buttonStop.Click += new System.EventHandler(this.buttonStop_Click);
this.buttonForward.Location = new System.Drawing.Point(95, 18);
this.buttonForward.Size = new System.Drawing.Size(75, 23);
this.buttonForward.Text = "Forward";
this.buttonForward.UseVisualStyleBackColor = true;
this.buttonForward.Click += new System.EventHandler(this.buttonForward_Click);
this.buttonBack.Location = new System.Drawing.Point(14, 18);
this.buttonBack.Size = new System.Drawing.Size(75, 23);
this.buttonBack.Text = "Back";
this.buttonBack.UseVisualStyleBackColor = true;
this.buttonBack.Click += new System.EventHandler(this.buttonBack_Click);
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(728, 430);
this.Controls.Add(this.webBrowser1);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.buttonSubmit);
this.Controls.Add(this.buttonRefresh);
this.Controls.Add(this.buttonHome);
this.Controls.Add(this.buttonStop);
this.Controls.Add(this.buttonForward);
this.Controls.Add(this.buttonBack);
this.ResumeLayout(false);
this.PerformLayout();
}
private System.Windows.Forms.WebBrowser webBrowser1;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.Button buttonSubmit;
private System.Windows.Forms.Button buttonRefresh;
private System.Windows.Forms.Button buttonHome;
private System.Windows.Forms.Button buttonStop;
private System.Windows.Forms.Button buttonForward;
private System.Windows.Forms.Button buttonBack;
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}