2013-12-13 17 views
0

我目前正在將SPGridView綁定到DataView。我想綁定到一個ObjectDataSource,而不是使用SPGridView的.DataSourceID屬性,這樣我就可以在我的網格上進行過濾,但不能與DataView一起工作(從我讀過的內容)。有沒有一種簡單的方法來從DataView實例化ObjectDataSource?我發現了一些相關的問題,但沒有一個答案顯示足夠的代碼上下文讓我想出如何做到這一點。如何將DataView轉換爲ObjectDataSource

這裏是我的代碼現在的樣子和我所期待的事:

DataSet myDataSet; 
myDataSet = populateDataFromDatabaseBasedOnSomeSearchParameters(startDate, endDate); 
DataView myGridDataView = myDataSet.Tables[0]; 

// Somewhere in here convert to an ObjectDataSource so that I can bind using DataSourceID instead and get filtering to work 

SPGridView myGridView; 
myGridView.DataSource = myGridView; 

myGridView.DataBind(); 

回答

0

我不知道任何方式的數據視圖轉換成一個ObjectDataSource在C#。 但是,您可以爲DataView和GridView使用相同的DataSource。

myDataSource.DataSource = someDataSource; 
myGridView.DataSource = someDataSource; 
myDataSource.DataBind(); 
myGridView.DataBind(); 

然後,當您的DataView更改時,更新DataSource並重新綁定您的GridView。

private void myDataView_OnListChanged(object sender, 
    System.ComponentModel.ListChangedEventArgs args) 
{ 
    //Update the DataSource someDataSource 
    myGridView.DataBind(); 
} 

希望這會有所幫助。

相關問題