Hi. thanks for the advise and I have already done it, but what if I am going to input the number of rows how will I be able to do it like a pyramid or a right angle.
for example:
I typed "4" into textbox

This does something very close to what you want, try to use this as a reference.

Dim j As Integer = CInt(TextBox1.Text)
Dim numOfPasses As Integer = j
Dim numbers() As String = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}
For i = 0 To j
Dim lineString As String = ""
numOfPasses = i + 1
While numOfPasses <> 0
lineString &= numbers(numOfPasses)
numOfPasses -= 1
End While
ListBox1.Items.Add(lineString)
Next

If there is a mathematical formula that generates the sequence 0, 12, 345, 6789, ... then you can use it. Otherwise you can use

Dim numberOfPasses As Integer = 3 'you would likely get the number from a control
For Each s As String In {"0", "12", "345", "6789"}
numberOfPasses -= 1
if numberOfPasses < 0 Then Exit For
label1.Text = s
Next

Although I feel I should point out that there is no reason to do this in a loop. What is the point of "writing" each iterated value into the textbox when the next iteration will just overwrite the previous value? It would all happen so quickly that the previous values would never be seen. You'd be better off storing the numbers 0, 12, etc in an array, then indexing into that array with the user input "level" number (of course, checking beforehand to ensure that the user selected value falls within the array).

So I am having trouble knowing what to return in the bottom method any help would be appreciated .
Here are the specifications for completing the StringArray class: