public LeNetObservationForm(LeNetSnapshot snapshot) { InitializeComponent(); this.Snapshot = snapshot; firstConvolutions = CreateHorizontalPictureBoxes(28*3, snapshot.FirstConvolutions.Length); firstConvolutionsContainer.Controls.AddRange(firstConvolutions); firstSubsampling = CreateHorizontalPictureBoxes(28 * 3, snapshot.FirstSubsampling.Length); firstSubsamplingContainer.Controls.AddRange(firstSubsampling); secondConvolutions = CreateHorizontalPictureBoxes(28 * 3, snapshot.SecondConvolutions.Length); secondConvolutionsContainer.Controls.AddRange(secondConvolutions); secondSubsampling = CreateHorizontalPictureBoxes(28 * 3, snapshot.SecondSubsampling.Length); secondSubsamplingContainer.Controls.AddRange(secondSubsampling); inputPicture.Paint += inputPicture_Paint; Snapshot.Updated += Snapshot_Updated; Snapshot.RequestUpdate(); }