我將有一個'主列表'(最好是BindingList類型)。在另一個班級中,我有一個子列表,它由「主列表」的某些元素組成。類的每個實例都有不同的元素。有沒有辦法讓每個子列表與「主列表」保持同步?有沒有辦法讓子列表與主列表的內容保持同步?
0
A
回答
0
您可以通過擴展您的列表並添加您在更新「主」列表時同步的複合對象來創建所需的列表類型。
這裏是我如何在java中做到這一點,你可以在c#中做同樣的事情,但是我知道我不記得確切的語法。你可以隨心所欲地擴展你喜歡的任何列表類型。
public class MyList extends ArrayList {
private List<Object> someOtherList;
public MyList(){
super();
}
public void setSyncList(List<Object> list){
someOtherList = list;
}
@Override
public boolean add(Object arg0) {
boolean b = super.add(arg0);
someOtherList.add(arg0); // here you can decide what action should be done to the syncList, it might not want to add all elements, same goes for the remove below
return b;
}
@Override
public boolean remove(Object arg0) {
boolean b = super.remove(arg0);
someOtherList.remove(arg0);
return b;
}
}
0
也許你需要的是ObseravleCollection集合。
請了解更多詳情 1. http://www.codeproject.com/KB/silverlight/SLListVsOCollections.aspx 2. http://karlhulme.wordpress.com/2007/03/04/synchronizedobservablecollection-and-bindablecollection/
相關問題
- 1. 有沒有辦法讓FSNConnection保持同步?
- 2. 有沒有辦法加入子列表
- 3. 有沒有辦法在html表中同步列寬?
- 4. 有沒有辦法讓類名與表名不同?
- 5. 有沒有辦法讓iTunes自動與Apple設備同步?
- 6. R:有沒有辦法查看列表
- 7. 有沒有辦法讓f:viewparam處理值列表?
- 8. 有沒有辦法讓一個嵌套列表驗證?
- 9. 有沒有辦法將對象始終保持在顯示列表的頂部?
- 10. 有沒有辦法讓定製內容與夾層/ Django
- 11. 有沒有辦法做出兩種不同類型的列表
- 12. 有沒有辦法保存下拉列表值
- 13. 有沒有辦法讓Google可視化表中的最左邊的列在滾動時保持固定?
- 14. jQuery - 讓js數組和DOM對象列表保持同步?
- 15. 有沒有其他方法可以檢查並同步列表?
- 16. 有沒有辦法讓所有可用的項目列表在谷歌代碼?
- 17. 有沒有辦法讓圖像保持比例?
- 18. 有沒有辦法讓array_column()保持$ input數組鍵?
- 19. 有沒有辦法讓merge.xts保持名稱不變?
- 20. 有沒有辦法讓鼠標在matlab中保持曲線?
- 21. 有沒有辦法讓vi和vim在OSX上表現不同?
- 22. 有沒有辦法保持iPad屏幕?
- 23. 保持帶複選框的ListView與字符串列表同步
- 24. 在保持列表垂直定位的同時保持列表內嵌文本
- 25. viewflow.io:有沒有辦法讓'子流'?
- 26. SQL Server有沒有辦法從給定列表中選擇列
- 27. 沒有主鍵的表的列表
- 28. 有沒有辦法同步這個?
- 29. 有沒有辦法讓jqgrid列名按列名
- 30. 有沒有辦法通過值列表來過濾Salesforce報表?
可以定義**同步是指這個**?你能給出一個主列表元素的例子,然後是子列表元素和你想保持同步的嗎? – 2011-12-29 14:27:35
如在「主列表」中的對象發生更改時,包含該對象的任何子列表將更新更改 – joshua 2011-12-29 14:31:54
如果它們不是值類型,則它們將更新更改。 .NET中的對象通過引用傳遞。你根本不應該擔心這個。一個對象可以屬於許多集合,只要它是相同的引用(並且它應該是如果你還沒有完成克隆),那麼該對象將被**「同步」**。 – 2011-12-29 14:45:31