The code:
this.TopMost = true;
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.splitContainer1.SplitterDistance = (this.ClientSize.Width -
this.splitContainer1.SplitterWidth) / 2;
pictureBox1.Image = Image.FromFile(@"d:\gifs\RadarGifAnimatoion.gif");//pb1.Image;
pictureBox2.Image = Image.FromFile(@"d:\gifs\SatelliteGifAnimatoion.gif");//pb2.Image;
timer1.Interval = animationSpeed;
timer1.Enabled = true;
And I have a timer tick event:
private void timer1_Tick(object sender, EventArgs e)
{
}
In this example the timer interval is 80ms.
So inside the timer1 tick event I want each 80ms to take a snapshot or a screenshot of both pictureBoxes and save this shot to the hard disk.
So in the end I will have on the hard disk for example 5 images of the two pictureBoxes .
So if I edit each image of the 5 on the hard disk I will see the two pictureBoxes images.
How can I do it in the timer1 tick event ?

The update code in the timer1 tick event:
private void timer1_Tick(object sender, EventArgs e)
{
using (var still = new Bitmap(this.Width, this.Height))
{
this.DrawToBitmap(still, new Rectangle(new Point(0, 0), still.Size));
still.Save(String.Format(@"d:\GifForAnimation\still_{0}.gif", sequence++), System.Drawing.Imaging.ImageFormat.Gif);
if (sequence == 5)
{
timer1.Stop();
}
}
}
I set the timer1 interval in the constructor to the same speed of the animation when created it. The animation speed is 80ms so the timer1 is set to 80ms too.
And still instead of taking each 80ms an image of the pictureBoxes it’s taking or saving the same image.
5 images that are the same.
To create a screenshot you could try this code:
Instead of the form you could refer to any container that contains both images.
EDIT
This screenshot does not include the start menu, just the container of the two image controls.
EDIT2
Rendering the UI to a bitmap like this might not animate the GIF’s because the bitmap has no awareness of the animations. You will also get into a race condition: updating the GIF’s and making the screenshots within a specific time period in the right order.
I’d use videos capturing software to record a video and select the frames I needed. That is much easier than trying to solve this issue and potential race condition