我正在尝试使用C#在Silverlight中预约,因此我将拥有一个主AppointmentBook
控件,并按照以下内容存储每个Appointment
控件:
List<kAppointment> appointments = null;
public IList<kAppointment> Appointments
{
get
{
if (appointments == null)
{
appointments = new List<kAppointment>();
}
// Can notify something change here,
return appointments;
}
}
我可以通知上面代码分配的AppointmentBook
控件新列表,因此它会重新绘制每个约会控件。
但是,如果通过以下方式更改约会列表,我该如何检查?:
appointments.Add(NewAppointment);
答案 0 :(得分:4)
听起来像是ObservableCollection的工作。
这让我们订阅事件并告诉我们集合的变化方式。
答案 1 :(得分:0)
我能想到一些事情。
答案 2 :(得分:0)
您可以像其他人一样使用和ObservableCollection
,或者您可以进行一些封装,并且不能提供对私人会员的完全访问。
如果Add
是通过您提供的单一公共方法完成的,那么您将始终知道该类用户何时添加约会并采取相应行动。