2010-07-15 234 views
0

我已經將一些數據綁定到數據網格,我希望能夠獲取原始數據。如何在數據綁定後獲取原始數據?

我已經在我的代碼的一部分數據綁定數據如下。

IEnumerable<MyClass> myClasses = GetMyClassesFromDatabase(); 
DataGridForMyClass.DataSource = myClasses; 
DataGridForMyClass.DataBind(); 

當我點擊一個按鈕時,我希望能夠用datagrid中的項目做東西。

我如何在給定DataGridForMyClass的情況下檢索MyClass的原始列表?

回答

1

您無法將其拉出網格。您需要將數據存儲在某處(Session,CacheViewState),並從那裏檢索數據。只有基本控件及其值存儲在網格中。

例如,如果你是顯示在使用一個Label一格一DateTime,日期時間不存儲,只是被放,並通過Label堅持的文本表示實際上是在網格中,你原來綁定的數據是不。

編輯:從你的評論,如果你想編輯網格數據,那麼你必須將數據回發並使用RowCommandRowUpdating事件。請參見下面的文章:

http://www.aspdotnetcodes.com/GridView_Insert_Edit_Update_Delete.aspx

+0

那麼我該如何保持更改這些項目,有一些修改,回數據庫? – mezoid 2010-07-15 04:23:15

+0

@mezoid如果這個答案幫助你不要忘記將它標記爲接受的答案。如果您需要更多幫助,請告訴我。 – Kelsey 2010-08-11 21:35:05

+0

我最終將用戶控件中的數據解析到數據傳輸對象中,然後使用該對象從數據庫中檢索記錄並更新詳細信息。雖然你的答案與我所做的並不完全一致,但我猜它確實指向了我所選解決方案的方向,所以我想我可以標記這個答案。 – mezoid 2010-08-12 06:07:46