2013-05-09 84 views
1

是否可以在c#asp.net中爲dll文件更改訪問修飾符。更改GridView的CreateRow方法的訪問修飾符

例如,我想使用的GridView的CreateRow在C#asp.net和我得到的錯誤是

「System.Web.UI.WebControls.GridView.CreateRow(INT,INT,System.Web程序.UI.WebControls.DataControlRowType,System.Web.UI.WebControls.DataControlRowState) 由於其保護級別「

我無法訪問我檢查了修飾符並且它受到保護。當我試圖改變時,它說只讀,不能改變。可能嗎?

更新:我試圖從數據庫中獲取數據集並嘗試將其綁定到gridview。數據集最多可以有4行。如果它的行數小於4,則剩餘的行應該在gridview中顯示爲空。所以我試圖使用CreateRow方法創建4個空行,然後綁定數據集中的每一行。我希望我很清楚!

預先感謝您!

+0

也許你應該解釋一下它是什麼你想要做的事。有更好的方法可以完成向GridView添加行。 – jadarnel27 2013-05-09 19:09:45

+0

我會稍微更新這個問題 – Ram 2013-05-09 19:13:29

+0

@ jadarnel27我更新了我正在嘗試做的事情。謝謝!! – Ram 2013-05-09 19:16:49

回答

0

我不會根據問你的原始問題(「是否可以在c#asp.net中爲dll文件更改訪問修飾符」),但問題的根源(添加空行到你的GridView)。

我認爲更好的方法(而不是嘗試在GridView上調用CreateRow)是將空行添加到數據集中,然後將其綁定到GridView。這將基於什麼特定的數據類型的存儲你的數據會有所不同,但基本步驟是:

  1. 從數據庫中獲取數據
  2. 使用的邏輯來判斷有多少行是
  3. 如果有少於4項,增加additionaly(空)項目/列到你的數據從步驟中存儲1
  4. 設置GridView.DataSource該數據集合的集合
  5. 呼叫GridView.DataBind();

爲了詳細說明步驟#3,做這樣的事情:

// Get your DataSet from the database 
DataSet data = getMyDataSomeHow(); 
// Create a blank row 
object[] newRow = new object[3]; // where "3" is the number of columns in your table 
newRow[0] = ""; 
newRow[1] = ""; 
newRow[2] = ""; 
//Add the blank row 
data.Tables["myTable"].BeginLoadData(); 
data.Tables["myTable"].LoadDataRow(newRow, true); 
data.Tables["myTable"].EndLoadData(); 
+0

讓我試試看!謝謝! – Ram 2013-05-09 19:48:48

+0

請您詳細說明步驟3,請! – Ram 2013-05-09 19:54:15

+0

@Ram當然。你現在正在存儲從數據庫中檢索到的數據? – jadarnel27 2013-05-09 19:57:57