Property Grid Control(Visual F#)

A property grid cotrol is a control used to display the properties associated to an object. To make a property grid control, use the following syntax:
Let propertygridobjvariable=new PropertyGrid()
For example:
let props=new PropertyGrid()
One of the important property is the SelectedObject property which defines the name of the object from which the grid control will get its returned properties. The syntax for SelectedObject property is:
Propertygridvariable.SelectedObject<-Objvariable
For example:
Props.SelectedObject<-button
For the sake of example, follow these steps: 1. Click Start>All Programs>Microsoft Visual Studio 2008>Microsoft Visual Studio 2008. 2. Click File>New>Project>Select Visual F# in the project types>Select F# application in the Visual Studio installed templates category. 3. Click the Project menu>Add reference>Click the .Net tab>Locate then double-click System.Windows.Forms. Do step 3 again and this time, select System.Drawing from the .Net tab. 4. Enter the following code after the line “// Learn more about F# at http://fsharp.net “:
// Learn more about F# at http://fsharp.net
//use the F# library
open System
//use the drawing class. Enables intellisense
open System.Drawing
//use the form class
open System.Windows.Forms
//creates a new form
let myform=new Form(Text="Use Process Grid",StartPosition=FormStartPosition.CenterScreen,AutoScaleMode=AutoScaleMode.Font)
//creates a textbox
let txtbox=new TextBox(Text="Textbox", Location=new System.Drawing.Point(5, 240))
//creates a label
let lbl=new Label(Text="Label", Location=new System.Drawing.Point(120, 240),AutoSize=true,BorderStyle=BorderStyle.FixedSingle)
//make a button from the button class
let button=new Button(Text="Button", Location=new System.Drawing.Point(200, 240))
//make a property grid control
let props=new PropertyGrid(Size=new System.Drawing.Size(180, 220),Left=50)
//adds a descriptive label
let desc=new Label(Text="Click the control below to view its properties...",AutoSize=true,Top=220)
//add the controls to our form
myform.Controls.Add(txtbox)
myform.Controls.Add(lbl)
myform.Controls.Add(button)
myform.Controls.Add(props)
myform.Controls.Add(desc)
//when the txtbox is clicked,display its properties in the property grid
txtbox.Click.Add(fun txtprops->props.SelectedObject<-txtbox)
//when the label is clicked,display its properties in the property grid
lbl.Click.Add(fun txtprops->props.SelectedObject<-lbl)
//when the button is clicked,display its properties in the property grid
button.Click.Add(fun txtprops->props.SelectedObject<-button)
myform.Show()
//executes our application
Application.Run(myform)

5. Click the run icon to execute your application. You should now see an output similar to the following screen shot:

Picturebox Control(Visual F#)

Picturebox is a control used to display an image on your form. To create a picturebox, use the following syntax:
let pictureboxobjvariable=new PictureBox()
for instance:
let picbox=new PictureBox()
To specify the url of an image to display in the picturebox, use the Image property.

Syntax:
pictureboxobjvariable.ImageLocation<-"url of an existent image"
for instance:
picbox.ImageLocation<-"C:\myimage.png"
Just make sure that myimage.jpg exist on your computer. Follow the steps below for a simple example on using a picturebox. 1. Click Start>All Programs>Microsoft Visual Studio 2008>Microsoft Visual Studio 2008. 2. Click File>New>Project>Select Visual F# in the project types>Select F# application in the Visual Studio installed templates category. 3. Click the Project menu>Add reference>Click the .Net tab>Locate then double-click System.Windows.Forms. Do step 3 again and this time, select System.Drawing from the .Net tab. 4. Enter the following code after the line “// Learn more about F# at http://fsharp.net “:
//use the f# standard library
// Learn more about F# at http://fsharp.net

open System
//use this to enable the intellisense. Very helpful in coding your application
open System.Drawing 
//specify the location of the Form classes
open System.Windows.Forms 
//create a form named imageform
let imageform=new Form(Text="Use PictureBox",StartPosition=FormStartPosition.CenterScreen,AutoScaleMode=AutoScaleMode.Font)
//creates a horizontal scrollbar
let hscroll=new HScrollBar(Location=new System.Drawing.Point(10, 230),Width=270)
//creates a tooltip
let tip=new ToolTip(IsBalloon=true,ToolTipIcon=ToolTipIcon.Info)
//creates a picturebox named picbox
//set the sizemode to autosize to adjust the size of the picturebox
//depending on the size of your image
//sets the picturebox borderstyle to fixed single
let picbox=new PictureBox(SizeMode=PictureBoxSizeMode.AutoSize,BorderStyle=BorderStyle.FixedSingle,Top=5)
picbox.ImageLocation<-("C:\suzzane.png")
//adds the picturebox on your form
imageform.Controls.Add(picbox)
imageform.Controls.Add(hscroll)
//adds the scrollbar to our form
//displays a tooltip when the mouse hovers the scrollbar
hscroll.MouseHover.Add(fun desc->tip.SetToolTip(hscroll,"Drag the scroll box to move the image"))
//change the horizontal position of the image when the scrollbox is moved
hscroll.Scroll.Add(fun move->picbox.Left<-Convert.ToInt32(hscroll.Value.ToString()))
imageform.Show()
Application.Run(imageform)
//executes your application
5. Click the run icon to execute your application. You should now see an output similar to the following screen shot: If you want a more in depth explanation on this controls, visit the MSDN website at msdn.microsoft.com or the Microsoft F# Development Center at http://msdn.microsoft.com/en-us/fsharp/default.aspx