2012-04-12 88 views
0

我需要從我的數據庫中獲取大量數據,並希望在應用程序啓動時將其獲取,並將其存儲在集合中並在整個應用程序中重用。共享收藏VB.NET

我試過聲明一個公共共享集合,並在我啓動應用程序時(在主窗體中)填充它。它在第一次使用集合時起作用,但是它是空的。

我環顧四周尋找我可能自己寫清楚的地方,但無法計算出任何東西。任何人有任何想法或提示?

的代碼是一樣的東西:

Public Shared m_objDocCollection As Collection(Of clDocumentation) 

然後在主窗體

clDocumentation.m_objDocCollection = clDocumentation.GetDocumentsFromDb() 

編輯;抱歉沒有添加代碼。已經複製了最相關的並放置在這裏; https://gist.github.com/2365610

+0

如果你沒有告訴我們一些代碼,我們只能想象你的問題...... – Marco 2012-04-12 06:12:51

回答

1

從代碼中可以看出發生了什麼並不明顯,但我的猜測是,您不止一次地(重新)初始化您的集合。

不要在您的其中收集正在(重新)任何地方的代碼搜索初始化像這樣:

m_objDocCollection = New Collection(Of clDocumentation)

將斷點設置這些。然後運行你的代碼,看看它們何時發射。

+0

按照你的說法,並認爲我發現錯誤,我的列表框和comboxes似乎指向與共享集合中相同的對象,當我清除列表時,共享集合也被清除了,但並不知道它是以這種方式工作的。謝謝你的幫助 :) – frkJohansen 2012-04-12 12:32:26