我有一个以下程序,它从4个文本框中获取字符串,并将它们放入数组中,并在用户单击btnOK后显示消息(从数组创建)。我有一个叫做btnClear的按钮,如果点击它应该清除消息字符串和数组,但它没有这样做,我不太确定为什么,有人可以看一看并提供建议。无法清除数组和字符串
string[,] namesTable = new string[10, 4];
int row = 0;
string message = "";
private void btnOK_Click_1(object sender, EventArgs e)
{
namesTable[row, 0] = txtFirstName.Text;
namesTable[row, 1] = txtSurname.Text;
namesTable[row, 2] = txtPosition.Text;
namesTable[row, 3] = txtComment.Text;
row++;
message = "Name.\tSurname\tPosition\tComment\n";
for (int i = 0; i < namesTable.GetLength(0); i++)
{
if (namesTable[i, 0] != null)
{
for (int j = 0; j < namesTable.GetLength(1); j++)
{
message += namesTable[i, j] + "\t";
}
message += "\n";
}
}
MessageBox.Show(message, "Names Table");
}
private void btnClear_Click_1(object sender, EventArgs e)
{
Array.Clear(namesTable, 0, 4);
message = "";
}
如果您需要更多信息,请让我知道。
@fadjad你能解释一下,为什么当我把它设置为4并做如下操作:1)输入4个值,点击确定,2)再次点击确定3)点击清除4)再次点击确定消息框仍显示第二行和第三? – 2011-05-14 13:55:31
因为在你的代码中:'Array.Clear(namesTable,0,4);'只通过'namesTable [0,4]'0设置'namesTable [0,1]'。 – fardjad 2011-05-14 13:59:39
谢谢,这是有道理的。 – 2011-05-14 14:06:33