2010-06-02 55 views
0

我有一個DetailsView控件,它從IEnumerable自定義類中獲取數據。 但我無法從控制中獲取更新值,因此我可以在數據庫中手動更新它們。我怎樣才能做到這一點?IEnumerable Collection綁定到DetailsView控件

Regads,

古斯塔沃

+0

你使用的是什麼技術,這是winforms,wpf,silverlight,asp ....?這聽起來像asp,但我不知道。 – luke 2010-06-02 22:11:32

+0

@luke,ASP.NET我猜,因爲框架中只有一個DetailsView類 – 2010-06-02 22:15:37

回答

0

我懷疑它不能與IEnumerable工作...的DetailsView可能需要能夠通過索引來訪問數據源(或至少一種方式來訪問數據源的特定項目),所以我認爲源代碼必須實現IList。但是我無法找到關於它的文檔中任何事情,所以這只是一個猜測...

+0

我想通了,讀取DataGridView控件提供的索引,並實現一個ICollection列表,而不是IEnumerable列表。 – 2010-10-08 21:16:06

0

好像增加了一些澄清可能會有幫助,但一些注意事項:

  • DetailsView控件可以工作與一個IEnumerable源(假設你將DataSource設置爲可枚舉),但它將綁定到從源獲取的第一個項目。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.detailsview.aspx#binding_to_data

  • ,因爲它聽起來就像你不綁定到數據源,則需要掛鉤到一個事件(ItemUpdated在這種情況下,我認爲),然後做數據庫更新自己

恕我直言,如果你可以切換到對「真正的」數據源生活結合會更容易,因爲你可以讓DetailsView控件做繁重你,但如果沒有,希望ItemUpdated將工作爲你:)