2012-06-15 61 views
0

我想模擬其他開發人員創建的另一個窗體。在DevExpress gridview中,他向過濾器行添加了一個新的行按鈕,而不是添加到每行。我想通過將自定義按鈕複製到篩選器行中的相應位置來實現這一點。如何在DevExpress GridView控件中添加自定義新行按鈕的功能

我的問題是如何將功能添加到它?我在文檔中找到了addnewrow()方法,但它需要一個DataTable()類,我無法弄清楚如何獲取。你可以幫我嗎?我今天剛開始使用ASPxGridView控件,所以這對我來說都是新的。

以下是我在DevExpress的gridview中添加新行的代碼。但感覺就像我走錯了路。我的第一個問題是我在哪裏可以找到DataTable類?有沒有更簡單的方法來做到這一點?

DataTable GetTable() 
    { 
     //You can store a DataTable in the session state 
     DataTable table = Session["Table"] as DataTable; 
     if (table == null) 
     { 
      table = new DataTable(); 

      DataColumn colid = table.Columns.Add("ID", typeof(Int32)); 
      DataColumn nameid = table.Columns.Add("Name", typeof(String)); 
      table.PrimaryKey = new DataColumn[] { colid }; 
      colid.ReadOnly = true; 

      for (int i = 0; i < 23; i++) 
      { 
       DataRow aRow = table.NewRow(); 
       aRow["ID"] = i; 
       aRow["Name"] = String.Format("Name{0}", i); 

       table.Rows.Add(aRow); 
      } 
      Session["Table"] = table; 
     } 
     return table; 
    } 
    protected void grid_RowInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e) 
    { 
     ASPxGridView grid = sender as ASPxGridView; 

     DataTable table = GetTable(); 
     table.Rows.Add(new Object[] { e.NewValues["ID"], e.NewValues["Name"] }); 

     Session["Table"] = table; 

     e.Cancel = true; 
     grid.CancelEdit(); 
    } 
+0

你能解釋你想達到什麼嗎?你需要使用DataTable嗎?你想將網格綁定到從數據庫中檢索數據的數據源? – Filip

+0

我想添加一個新的按鈕到過濾器行,而不是在每個數據行中。我不知道我是否需要使用DataTable。是的,我想綁定網格。 – sehummel

回答

相關問題