【发布时间】:2016-03-15 22:37:56
【问题描述】:
在 Insert Into ArrayList 按钮的 click 事件处理程序中,检查用户是否: 在 Position 文本框中输入了一个位置。在演员姓名文本框中输入演员的姓名。
检查这些文本框以查看用户是否输入了值。如果用户输入了不正确的值,请不要担心,只要他们输入了一个值。如果没有输入文本,则以消息框格式显示相关错误消息并退出该方法,因此不会进行进一步处理。
接着调用 InsertIntoArrayList,传递这些值并导致将新值插入到 ArrayList 中。
最后,调用 PopulateActors 更新其项目以反映更改。
到目前为止,我的代码没有插入到数组中:
private void btnInsert_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(txtPosition.Text))
{
MessageBox.Show("Please enter a Position");
return;
}
if (string.IsNullOrEmpty(txtActorName.Text))
{
MessageBox.Show("Please enter an Actor Name");
return;
}
InsertIntoArrayList(txtActorName.Text, Position);
PopulateActors();
}
使用的方法有:
void InsertIntoArrayList(string txtActorName, int txtPosition)
{
ArrayList ActorArrayList = new ArrayList();
ActorArrayList.Insert(txtActorName, txtPosition);
}
还有:
void PopulateActors()
{
cboActor.Items.Clear();
foreach (string Actor in ActorArrayList)
{
cboActor.Items.Add(Actor);
}
}
新手编码器! 为您的帮助干杯:)
【问题讨论】:
-
从哪里获得传递给插入代码的变量 Position?请注意,ActorArrayList 是在插入代码中声明的,因此在该方法之外无法看到。如果您的代码可以编译,那么您将在更全局的范围内声明另一个名为 ActorArrayList 的 ArrayList
-
虽然这不能解决您当前的问题(Luka 已经很好地为您解决了),但您确实应该将
ArrayList更改为List<string>。ArrayList是一个无类型列表,当您知道列表应包含的类型时,确实不应该使用。 -
@Enigmativity 绝对正确,如果您可以访问更新版本的 C#。
-
Cheers 会记住这一点。