2011-06-13 35 views
1

我有一個GV和DV從同一個數據庫中提取數據。這些控件之間的聯繫是當GV中的記錄被選中時,DV顯示關於該記錄的更多細節。ASP.NET:GridView和DetailsView,我必須單獨連接到同一個數據庫嗎?

我需要單獨的連接嗎?顯然,我沒有實現這個目標,並且正在努力。謝謝。

澄清,以免浪費你的時間:

我問連接,而不是數據源。我不確定可以使用相同連接的原因是,對於GV,連接沒有任何參數。而DV,它需要傳遞給它的記錄ID。或者我錯了?

這裏的鏈接上,這讓我納悶的.NET代碼: http://asp.dotnetheaven.com/util/srcview.aspx?path=~/aspnet/samples/data/GridViewMasterDetails.src

我是新手所以我仍然混淆的術語。感謝您的耐心。

+0

您將需要一個傳遞的ID。您可以搜索該對象的數據源以填充DV。您將從GV的選定行獲取ID,您可以使用它在DataTable中搜索填充DV所需的行。您可以使用DataTable上的Select()函數來滿足此需求。 – 2011-06-13 20:18:08

+0

謝謝,@jmein,我添加了一些我在網上看到的代碼,這讓我想知道。請看我編輯的問題。 – user776676 2011-06-13 20:24:26

+0

如果您願意,您可以使用2個數據源,或者您可以使用給定的ID搜索第一個數據源。 – 2011-06-13 20:42:40

回答

2

他們可以使用相同的數據源。 (如ObjectDataSource或SQLDataSource)

+0

和其他人:澄清,我不是在問DATASOURCE。我在問關於CONNECTION。 – user776676 2011-06-13 20:11:01

+0

@ user776676您可以使用相同的連接。如果您使用的是實際的SQLConnection對象,則仍然可以使用相同的連接來綁定這兩個對象。不過,我建議使用DataSource對象來簡化操作。 – 2011-06-13 20:15:05

1

您可以使用相同的數據源,即DataTable。但是,當選擇Gridview行時,您需要找到所選行的索引,然後從DataTable中找到DataRow並將您的DetailView重新綁定到該DataRow。希望這可以幫助。

1

我認爲你使用的是Visual Studio數據綁定,並且我會說可以使用相同的Connection(DataSource)對象(如果是這樣的話),但我寧願建議你避免這個設計時間Visual Studio編程雖然簡單快捷

相關問題