/*
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( ) ) ;
}
}
Ci8qClByb2Zlc3Npb25hbCBXaW5kb3dzIEdVSSBQcm9ncmFtbWluZyBVc2luZyBDIwpieSBKYXkgR2x5bm4sIENzYWJhIFRvcm9rLCBSaWNoYXJkIENvbndheSwgV2FoaWQgQ2hvdWRodXJ5LCAKICAgWmFjaCBHcmVlbnZvc3MsIFNocmlwYWQgS3Vsa2FybmksIE5laWwgV2hpdGxvdwoKUHVibGlzaGVyOiBQZWVyIEluZm9ybWF0aW9uCklTQk46IDE4NjEwMDc2NjMKKi8KCnVzaW5nIFN5c3RlbTsKdXNpbmcgU3lzdGVtLldpbmRvd3MuRm9ybXM7CnVzaW5nIFN5c3RlbS5EcmF3aW5nOwp1c2luZyBBeFNIRG9jVnc7CgpwdWJsaWMgY2xhc3MgV2ViQnJvd3NlciA6IEZvcm0KewogICBwcml2YXRlIEF4V2ViQnJvd3NlciBicm93c2VyOwogICBwcml2YXRlIEJ1dHRvbiBnb0J1dHRvbjsKICAgcHJpdmF0ZSBUZXh0Qm94IGFkZHJlc3NCb3g7CiAgIHByaXZhdGUgUGFuZWwgcGFuZWwxOwogICBwcml2YXRlIFBhbmVsIHBhbmVsMjsKCiAgIHB1YmxpYyBXZWJCcm93c2VyKCkKICAgewogICAgICBwYW5lbDEgPSBuZXcgUGFuZWwoKTsKICAgICAgcGFuZWwyID0gbmV3IFBhbmVsKCk7CiAgICAgIGJyb3dzZXIgPSBuZXcgQXhXZWJCcm93c2VyKCk7CiAgICAgIGJyb3dzZXIuQmVnaW5Jbml0KCk7CgogICAgICB0aGlzLlN1c3BlbmRMYXlvdXQoKTsKICAgICAgcGFuZWwxLlN1c3BlbmRMYXlvdXQoKTsKICAgICAgcGFuZWwyLlN1c3BlbmRMYXlvdXQoKTsKCiAgICAgIHRoaXMuVGV4dCA9ICJNeVdlYkJyb3dzZXIiOwogICAgICBwYW5lbDEuU2l6ZSA9IG5ldyBTaXplKDMwMCwgMzApOwogICAgICBwYW5lbDEuRG9jayA9IERvY2tTdHlsZS5Ub3A7CgogICAgICBwYW5lbDIuU2l6ZSA9IG5ldyBTaXplKDI4NSwyNDApOwogICAgICBwYW5lbDIuTG9jYXRpb24gPSBuZXcgUG9pbnQoNSwgMzEpOwogICAgICBwYW5lbDIuQW5jaG9yID0gQW5jaG9yU3R5bGVzLlRvcCB8IEFuY2hvclN0eWxlcy5Cb3R0b20gfCBBbmNob3JTdHlsZXMuTGVmdCB8IEFuY2hvclN0eWxlcy5SaWdodDsKCiAgICAgIGJyb3dzZXIuRG9jayA9IERvY2tTdHlsZS5GaWxsOwoKICAgICAgYWRkcmVzc0JveCA9IG5ldyBUZXh0Qm94KCk7CiAgICAgIGFkZHJlc3NCb3guU2l6ZSA9IG5ldyBTaXplKDI2MCwgMjApOwogICAgICBhZGRyZXNzQm94LkxvY2F0aW9uID0gbmV3IFBvaW50KDUsNSk7CiAgICAgIGFkZHJlc3NCb3guQW5jaG9yID0gQW5jaG9yU3R5bGVzLlRvcCB8IEFuY2hvclN0eWxlcy5SaWdodCB8IEFuY2hvclN0eWxlcy5MZWZ0OwoKICAgICAgZ29CdXR0b24gPSBuZXcgQnV0dG9uKCk7CiAgICAgIGdvQnV0dG9uLkltYWdlID0gSW1hZ2UuRnJvbUZpbGUoIkFycm93LmljbyIpOwogICAgICBnb0J1dHRvbi5Mb2NhdGlvbiA9IG5ldyBQb2ludCgyNzAsNSk7CiAgICAgIGdvQnV0dG9uLlNpemUgPSBuZXcgU2l6ZSgyMCwyMCk7CiAgICAgIGdvQnV0dG9uLkFuY2hvciA9IEFuY2hvclN0eWxlcy5Ub3AgfCBBbmNob3JTdHlsZXMuUmlnaHQ7CgogICAgICBwYW5lbDEuQ29udHJvbHMuQWRkUmFuZ2UobmV3IENvbnRyb2xbXSB7IGFkZHJlc3NCb3gsIGdvQnV0dG9uIH0pOwogICAgICBwYW5lbDIuQ29udHJvbHMuQWRkKGJyb3dzZXIpOwogICAgICB0aGlzLkNvbnRyb2xzLkFkZFJhbmdlKG5ldyBDb250cm9sW10geyBwYW5lbDEsIHBhbmVsMiB9KTsKCiAgICAgIGJyb3dzZXIuRW5kSW5pdCgpOwogICAgICBwYW5lbDEuUmVzdW1lTGF5b3V0KCk7CiAgICAgIHBhbmVsMi5SZXN1bWVMYXlvdXQoKTsKICAgICAgdGhpcy5SZXN1bWVMYXlvdXQoKTsKCiAgICAgIGdvQnV0dG9uLkNsaWNrICs9IG5ldyBFdmVudEhhbmRsZXIoZ29CdXR0b25fQ2xpY2spOwogICAgICBicm93c2VyLkdvSG9tZSgpOwogICB9CgogICBwcml2YXRlIHZvaWQgZ29CdXR0b25fQ2xpY2sob2JqZWN0IHNlbmRlciwgRXZlbnRBcmdzIGUpCiAgIHsKICAgICAgb2JqZWN0IG8gPSBudWxsOwogICAgICBicm93c2VyLk5hdmlnYXRlKGFkZHJlc3NCb3guVGV4dCwgcmVmIG8sIHJlZiBvLCByZWYgbywgcmVmIG8pOwogICB9CgogICBbU1RBVGhyZWFkXQogICBwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCiAgIHsKICAgICAgQXBwbGljYXRpb24uUnVuKG5ldyBXZWJCcm93c2VyKCkpOwogICB9Cn0KCiAgICAgIA==
compilation info
prog.cs(12,14): error CS0234: The type or namespace name `Windows' does not exist in the namespace `System'. Are you missing an assembly reference?
prog.cs(14,7): error CS0246: The type or namespace name `AxSHDocVw' could not be found. Are you missing a using directive or an assembly reference?
prog.cs(18,12): error CS0246: The type or namespace name `AxWebBrowser' could not be found. Are you missing a using directive or an assembly reference?
prog.cs(19,12): error CS0246: The type or namespace name `Button' could not be found. Are you missing a using directive or an assembly reference?
prog.cs(20,12): error CS0246: The type or namespace name `TextBox' could not be found. Are you missing a using directive or an assembly reference?
prog.cs(21,12): error CS0246: The type or namespace name `Panel' could not be found. Are you missing a using directive or an assembly reference?
prog.cs(22,12): error CS0246: The type or namespace name `Panel' could not be found. Are you missing a using directive or an assembly reference?
Compilation failed: 7 error(s), 0 warnings
stdout