猿问

限制在拥有List.Add()的类之外使用List.Add()

List<>在课堂上有一个公共财产类型MyClass。这是公开的,因为外部代码MyClass(包括XAML绑定)需要能够访问和更改数据。但是,外部元素不MyClass应该做的一件事就是调用Add()方法。将新方法添加到列表的唯一方法应该是通过MyClass.MyListAdder()方法。

有没有办法做到这一点?


青春有我
浏览 123回答 2
2回答

慕无忌1623718

您可以尝试切换到ReadOnlyCollection<T>。它的API与稍有不同,List<T>但可能足以满足您的需求。

烙印99

这可能是您要寻找的:List<object> someList = new List<object>();public ReadOnlyCollection<object> SomeList{&nbsp; &nbsp; get&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; return someList.AsReadOnly();&nbsp; &nbsp; }}
随时随地看视频慕课网APP
我要回答