2013-12-09 65 views
3

我想知道是否有選項在devexpress GridControl中添加行,就像我們在正常的datagridview中添加行一樣。如何在devexpress GridControl中添加行,就像我們在正常的datagridview中添加行一樣。 (WinForms C#)

在添加行的這一點上我沒有數據表或數據源。當應用程序加載時,我應該可以手動將行插入到gridview。它可以在一個正常的datagridview像這樣:

dataGridView1.Rows.Add(); 

我正在C#中的WinForms工作。 我無法在devexpress gridview中找到一個選項來執行此操作。

感謝 拉胡爾

回答

1

我不知道爲什麼你沒有一個數據源,什麼阻止你創建一個。

最正確的方式來實現你想要做的是建立要顯示對象的List,然後隨着GridControl

List<MyClass> myClassList = new List<MyClass>(); 
// Here, you build your list as if you were to build your "rows" 

// Finally, you can do this 
gridControl1.DataSource = myClassList; 

的DevExpress的數據源影響創建列和填充數據。

4

爲了能夠在您的網格中添加行:

。您應該設置gridDataSource屬性(如Fares寫的)

。讓您的視圖可編輯

myView.OptionsBehavior.Editable = true; 

。設置您的視圖的NewItemRowPosition

myView.OptionsView.NewItemRowPosition = NewItemRowPosition.Bottom; 
0

這是可以做到的位置,你必須使用一個DataTable將其指定爲數據源 - 看看這個代碼剪斷:

Dim dataTable As DataTable = New DataTable 

    dataTable.Columns.Add(Me.GridColumn1.FieldName) 
    dataTable.Columns.Add(Me.GridColumn2.FieldName) 
    dataTable.Columns.Add(Me.GridColumn3.FieldName) 
    dataTable.Columns.Add(Me.GridColumn4.FieldName) 

    For Each pic In collectionToShow 
     Dim row As DataRow = dataTable.NewRow() 
     row(Me.GridColumn1.FieldName) = pic.Name 
     row(Me.GridColumn2.FieldName) = pic.Town 
     row(Me.GridColumn3.FieldName) = pic.Alias 
     row(Me.GridColumn4.FieldName) = pic.Somevalue 
     dataTable.Rows.Add(row) 
    Next 

    gcPcoSelection.DataSource = dataTable 

不要忘記在DevExpress-Designer的GridColumns中分配FieldName,否則字段將爲空。這是VB.net,但可以在C#中以1:1完成,順便說一下,我不明白DevExpress如何完成那些困難的簡單任務。

相關問題