Library code snippets

Create Controls At Runtime

We are going to create a link control and an image control one next to each other. First we have to set which control we are going to create, so in the form class area place:

private PictureBox PicBox;
private LinkLabel Blue;

Now when you want to create the link and picturebox call this

//CREATES AN EVENT HANDLER FOR THE LINK
EventHandler handler = new EventHandler(LinkLabel_Click);

//BUILD CONTROL LINK
Blue = new LinkLabel();
Blue.Text = "Link Control";
Blue.Location = new Point(30, 20);
Blue.Size = new Size(150, 20);
Blue.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline;
Blue.Click +=handler;
//CREATES AN NEW PICTUREBOX AND FILLS IT WITH A ICON
PicBox = new PictureBox();
PicBox.Image = Image.FromFile(@"c:\pic.ico");
PicBox.Top = 20;
PicBox.Width = 16;
PicBox.Height = 16;
PicBox.Left = 10;
//ADD CONTROLS
Controls.Add(PicBox);
Controls.Add(Blue);


You created a handler for the click event of the link button so you could now could this in:

private void LinkLabel_Click(object sender, EventArgs e)
{
    //SPLITS THE DATA SO U CAN GET THE TEXT , U COULD PARSE IT THROUGH A CASE STATMENT FOR DIFFERENT SELECTIONS
    string Data = Convert.ToString(sender);
    string [] Split = Data.Split(new Char [] {':'});
    MessageBox.Show("Link Clicked :" + Convert.ToString(Split[1]));
}


If you wanted to create a list of controls you could use the panel control and set the autoscroll property to true so everytime another control is added with a larger top value the scrollbar would appear giving the user the impression of a list control. You can add controls to a panel control simply by putting

panel1.Controls.Add(PicBox);
panel1.Controls.Add(Blue);

Comments

  1. 03 Nov 2006 at 12:32

    It was very good one.

    But i am facing a problem when i am creating runtime controls on button click.
    event of runtime controls are not working.Plz tell me its urgent






  2. 01 Jan 1999 at 00:00

    This thread is for discussions of Create Controls At Runtime.

Leave a comment

Sign in or Join us (it's free).

Colin Harman MACITP I am 26 and live in sydney, australia. I enjoy drinking and going out, but I also enjoy writing programs + creating websites in my free time. I play golf and ski. One of my main intrests whe...
AddThis

Related podcasts

  • Object-Oriented Programming in Ruby

    In this episode, I talk with Scott Bellware about object-oriented programming in Ruby, and Ruby's object model. This is taken from a private conversation, and the audio quality suffers at times. Much thanks to Scott for allowing this to be released.This episode of the Alt.NET Podcast is bro...

Want to stay in touch with what's going on? Follow us on twitter!