如何从数组中删除条目?

时间:2009-04-30 01:47:46

标签: vb.net visual-studio-2008

我正在使用Visual Basic 2008,我正在制作一个简单的会议策划程序。每天存储的数据存储在一个包含三个字段的数组中:

calendars.Days
calendars.ToD
日历。约会

Days存储与条目的MonthCalendar对象相对应的所选日期 ToD是由约会时间组合选择的时间 约会是在给出约会的文本框中的任何描述。

只要在MonthCalendar对象上选择了一天,它就会加载当天在阵列中的所有数据,并将其显示在名为lstResult的列表框中。我想要做的是,当我按下列表框中选定条目的删除键时,它会删除数组和列表框中的条目。列表框部分很简单,我只需要帮助从数组中删除选择。

任何人对如何解决这个问题都有任何想法?请注意,我不是Visual Basic的专家,因此有些事情可能需要对它们进行一些解释。

3 个答案:

答案 0 :(得分:1)

如果要使用数组,可以更改设计以包含标记以标记“已删除”的项目;您可以将它们视为“逻辑删除”(奖励是您可以恢复之前删除的内容)并在视图中过滤那些未标记的内容。明白了吗?只需我0.02美元。

答案 1 :(得分:1)

作为建议,我建议创建一个CalenderAppointment类并使用CalenderAppointment类的通用列表。通过这样做,您将获得Linq和仿制药的所有优点。

dim myAppointments as new List(of CalenderAppointment)

public sub AddAppointment(appointment as CalenderAppointment)
    myAppointments.Add(appointment);
end sub

public sub RemoveAppointment(appointment as CalenderAppointment)
    myAppointments.Remove(appointment);
end sub


public class CalenderAppointment

    public Appointment as string
    public Days as integer
    public TimeOfDay as DateTime

end class

Appointment,Days和TimeOfDay应该真正用于属性,但为了简单起见,你可以使用公共变量

请查看 http://msdn.microsoft.com/en-us/library/w256ka79(VS.80).aspx了解有关泛型的更多信息

答案 2 :(得分:0)

通常,Array接口不支持删除特定对象。为此,您应该使用某种列表(例如ArrayList)。