I have a form for Juxtaposing two images, it has a TabControl, whenever I add a TabPage, a SplitContainer is added to the page, then two PictureBoxes are added on both sides of the SplitContainer, then two labels are added one each side. The problem is I don't know how to access my PictureBoxes.
private void tabControl1_ControlAdded(object sender, ControlEventArgs e)
{
if (e.Control is TabPage)
{
//Add split container
var split = new SplitContainer();
split.Dock = DockStyle.Fill;
split.SplitterDistance = 75;
split.AutoScaleMode = AutoScaleMode.Inherit;
split.Width = 10;
split.IsSplitterFixed = true;
e.Control.Controls.Add(split);
//add left picturepox to splitcontainer
var pb1 = new PictureBox();
pb1.BackColor = Color.White;
pb1.ImageLocation = "http://www.defensetech.org/images/df-21.jpg";
pb1.SizeMode = PictureBoxSizeMode.Zoom;
split.Panel1.Controls.Add(pb1);
pb1.Dock = DockStyle.Fill;
pb1.DoubleClick += new EventHandler(pb1_DoubleClick);
//add right picturebox to splitcontainer
var pb2 = new PictureBox();
pb2.BackColor = Color.White;
pb2.ImageLocation = "http://www.evemariebridalveils.com/JHJ2019.jpg";
pb2.SizeMode = PictureBoxSizeMode.Zoom;
split.Panel2.Controls.Add(pb2);
pb2.Dock = DockStyle.Fill;
pb2.DoubleClick +=new EventHandler(pb2_DoubleClick);
//add before label
var beforeLbl = new Label();
beforeLbl.AutoSize = false;
beforeLbl.TextAlign = ContentAlignment.MiddleCenter;
beforeLbl.Font = new Font("Tahoma", 15f, FontStyle.Bold);
beforeLbl.Text = "BEFORE";
beforeLbl.Dock = DockStyle.Bottom;
split.Panel1.Controls.Add(beforeLbl);
//add after label
var afterLbl = new Label();
afterLbl.AutoSize = false;
afterLbl.Font = new Font("Tahoma", 15f, FontStyle.Bold);
afterLbl.Text = "AFTER";
afterLbl.TextAlign = ContentAlignment.MiddleCenter;
afterLbl.Dock = DockStyle.Bottom;
split.Panel2.Controls.Add(afterLbl);
}
}
http://code.google.com/p/notepadenhanced/downloads/list