Something like this should work, for this example place a Panel on your form with autoscroll set to true.
Public Class Form1
Private HSpacing As Integer = 10
Private VSpacing As Integer = 40
Private BoxWidth As Integer = 200
Private MaximumBoxes As Integer = 20
Private NumberOfBoxes As Integer = 0
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
If NumberOfBoxes < MaximumBoxes Then
Dim TempTextBox As New TextBox
TempTextBox.Name = "MyTextBox" & NumberOfBoxes.ToString
TempTextBox.Width = BoxWidth
TempTextBox.Top = (NumberOfBoxes * VSpacing) + Panel1.AutoScrollPosition.Y
TempTextBox.Left = HSpacing
TempTextBox.Visible = True
NumberOfBoxes += 1
Hope this helps,
 Sorry Vis781, I didn't realise you'd already answered!
But, It is working fine in the case of vb.net .I want to add the controls dynamic in the ASP.net.Today also i was tried so much to get this.Ever time new control was add but the old control was not a there.