我有一个项目,我正在努力如何从列表中删除。
我要删除的列表项是用户从列表框中选择的索引处的任何项目。
该项目有一个名为Pickcuplist的列表,一个用于主窗体的GUI一个,另一个用于拾取窗体。拾取形式是删除按钮的位置,但是选择了索引的列表框位于主窗体上。
我找到了List.RemoveAt然而我似乎无法让它工作。
项目将添加到列表中,例如从拾取表单表单中添加:
txtCustName.Text = thePickup.name;
txtCustAddress.Text = thePickup.address;
txtArrival.Text = thePickup.arrival.ToString();
txtDaddress.Text = thePickup.Daddress;
txtDeliveryName.Text = thePickup.Dname;
LblType.Text = thePickup.type;
这是主要表单add
的代码 /*
* This method creates a new pickup object, allows the user to
* enter details and adds it to the List
*
*/
Pickupform.pickup = new Pickups();
//New Visit- note added to the pickupform object
Pickupform.ShowDialog();
//Show the pickupForm. ShowDialog ensures that the form has the exclusive focus until it is closed.
if (Pickupform.pickup != null)
//if null then the "cancel" button was pressed
{
Pickups newpic = Pickupform.pickup;
//Get the Pickup object from the form
thePickup.addPickups(newpic);
//Add the visit to the list
}
updateList();
//Update the list object to reflect the Pickups in the list
答案 0 :(得分:0)
请查看此链接(http://www.dotnetperls.com/removeat)
关键在于:
var list = new List<string>();
list.Add("dot");
list.Add("net");
list.Add("perls");
list.RemoveAt(1); <-- See, you pass in an integer
因此,在您的情况下,您将有一个事件或触发删除的事件,此时您需要找到要删除的项目的索引并调用该方法。如果你正在努力解决这个问题,你应该考虑做一些教程,这是非常基础的。
答案 1 :(得分:0)
转到代表具有“删除”按钮的Form
的类。
找到附加到此按钮的Click
事件的事件处理程序。
如果您可以访问此课程中的pickupList,请从那里拨打RemoveAt
。
如果您无权访问它,请找到将列表传递给其他表单的方法。例如,如果带有“删除”按钮的表单是从另一个表单创建的,那么您可以将列表作为构造函数参数传递,并使用“删除”按钮将其保存在表单中的字段中。