I need to create a form that allows a user to create a two dimensional array. I made a form that has 2 numericupdowns that allows the user to set the maximum number of positions and columns within the array. This set of numericupdowns will not be used again so any mention of numericupdowns refers to the following set. Then I have another set of numericupdowns, a textbox and a button to allow the user to set a value which is typed into the textbox for each array combination. The second set of numericupdowns lets them scroll through and set each combination they want to set a value for. I need it so that once they click the button the value in the textbox is saved and the first numericupdown is incremented by + 1 until it reaches it's maximum. I am new to C# and I am not familiar with programming in general. I am using MS C# 2008 to create this windows form. I don't know if it will help much but here is some of the code I have so far:

Ex of what I am trying to do.

Say a user sets the array to dimensions:
Array[3,2]

I want the user to be able to scroll through these possibilities using a numericupdown to set the value of each array dimension,

Array[0,0] = value set by user by typing it into textbox

button clicked and array dimension saved, first numericupdown increased by 1.

Array[1,0] = value set by user by typing it into textbox

button clicked and array dimension saved, first numericupdown increased by 1.

Array[2,0] = value set by user by typing it into textbox

button clicked and array dimension saved, second numericupdown increased by 1.

Array[0,1] = value set by user by typing it into textbox

button clicked and array dimension saved, first numericupdown increased by 1.

Array[1,1] = value set by user by typing it into textbox

button clicked and array dimension saved, first numericupdown increased by 1.

Array[2,1] = value set by user by typing it into textbox

I am hoping that make this more clear.

Here is some of the code I have so far:

public partial class Form_DefArr : Form
{
public int[,] IndxArr;
public Form_DefArr()
{

InitializeComponent();

}

private void button_CreateNewArr_Click(object sender, EventArgs e)
{
decimal FirstDim = (this.numericUpDown_FirstDim.Value - 1);
decimal SecondDim = (this.numericUpDown_SecondDim.Value - 1);
numericUpDown_FirstIndx.Maximum = FirstDim ;
numericUpDown_SecondIndx.Maximum = SecondDim ;

}

private void numericUpDown_SecondIndx_ValueChanged(object sender, EventArgs e)
{

}

private void button_EnterData_Click(object sender, EventArgs e)
{
int ArrData = int.Parse(textBox_ArrElementData.Text);
ArrData = Convert.ToInt32(ArrData);
int FirstIndx = (int)numericUpDown_FirstIndx.Value;
int SecondIndx = (int)numericUpDown_SecondIndx.Value;
IndxArr = new int[FirstIndx, SecondIndx];
IndxArr[FirstIndx, SecondIndx] = ArrData;
}

}