制作空文本框

时间:2015-06-06 09:15:40

标签: c# winforms textbox

当我想清除以下数组时:

userInfo[0] = txtPassword.Text;
userInfo[1] = txtVoornaam.Text;
userInfo[2] = txtAchternaam.Text;
userInfo[3] = txtWoonplaats.Text;
userInfo[4] = txtPostcode.Text;
userInfo[5] = txtTelnr.Text;

我正在做以下事情:

for (int i = 0; i < 5; i++)
{
  userInfo[i] = "";
}

这显然不起作用,当我尝试这个时:

foreach (string item in userInfo)
{
  item = "";
}

也行不通。我怎么能这样做而不说:

userinfo[0] = txtPassword; 

1 个答案:

答案 0 :(得分:2)

如果您想将它们视为数组,则需要将它们添加到数组中,或者更确切地说 更好地List<TextBox>。这样做一次,您可以为任何或您的需求进行循环播放..

做一次......:

List<TextBox> boxes = new List<TextBox>()
           { txtPassword, txtVoornaam, txtAchternaam, txtWoonplaats, txtPostcode, txtTelnr};

现在您可以将值拉出到字符串数组

string[] myTexts = boxes.Select(x => x.Text).ToArray();

..或列表:

List<string> myTexts = boxes.Select(x => x.Text).ToList();

或者你可以清除它们:

foreach (TextBox tb in boxes) tb.Text = "";

如果需要,您可以通过变量访问List元素:

boxes.Find(x => x == textBox2).Text = "12345";

..或Name

boxes.Find(x => x.Name == "txtVoornaam").Text = "Jens";

(省略所有检查..)