Csharp/C Sharp/GUI Windows Form/Web Browser

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

My Web Browser

<source lang="csharp"> /* 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);
     }
 }

}


      </source>

<A href="http://www.nfex.ru/Code/CSharpDownload/MyWebBrowser.zip">MyWebBrowser.zip( 126 k)</a>


Simple WebBrowser

<source lang="csharp"> /* 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());
  }

}

      </source>


WebBrowser in action

<source lang="csharp"> 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());
 }

}


      </source>


Web Browser usual actions

<source lang="csharp"> 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());
       }
   }
</source>