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 when no...
AddThis

Related discussion

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...

Events coming up

  • Aug 28

    St. Louis Day of .NET

    St. Charles, United States

    Technical conference with be 2 full days of content with over 40 sessions from local and national speakers, with topics such as:•.NET languages: C#, VB.NET•Technologies: WPF, Silverlight, WCF•Development tools: Visual Studio, TFS, Expression Blend

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