2017-02-10 67 views
1

我得到這個錯誤時嘗試加入的UltraGrid錯誤的行加入的UltraGrid Infragistics的

沒有足夠的上下文中的行添加一個新行。此樂隊中的某一行或主樂隊必須處於活動狀態才能提供足夠的上下文。

要添加新行,我使用下面的代碼行。但給錯誤。 myGrid.DisplayLayout.Bands(0).AddNew()

任何幫助,將不勝感激。

+0

是網格空(或不使用數據源集)當你調用的AddNew? – Steve

+0

是的,它是空的,沒有數據源。 – Pirate

+0

如果不知道要顯示哪些列,您如何設想網格能夠創建一行? – Steve

回答

2

爲了在運行時添加UltraGrid行,UltraGrid的數據源屬性必須與null不同。通過這種方式,數據源上下文對於UltraGrid很熟悉,它會根據已提供的數據模式添加一個新行。否則UltraGrid不知道新行應該是什麼樣子。在下面的文檔頁面的詳細信息 - Add Rows to WinGrid Programmatically

Private Sub Form1_Load(sender As Object, e As EventArgs) 
    ' Create a table that will contain three columns 
    Dim table As New DataTable("Table") 

    ' Create three columns that will hold sample data 
    Dim column1 As New DataColumn("Column 1", GetType(String)) 
    Dim column2 As New DataColumn("Column 2", GetType(Integer)) 
    Dim column3 As New DataColumn("Column 3", GetType(System.Drawing.Color)) 

    ' Add the three columns to the table. 
    table.Columns.AddRange(New DataColumn() {column1, column2, column3}) 

    ' Assign grid's data soure to the newly created table 
    Me.ultraGrid1.DataSource = table 
End Sub 

Private Sub ultraButton1_Click(sender As Object, e As EventArgs) 
    ' Now this line of code works! 
    Me.ultraGrid1.DisplayLayout.Bands(0).AddNew() 
End Sub 

另外,如果您想定義在設計時的數據模式,您可以從UltraDataSource組件和UltraGrid設計師利用。

enter image description here

相關問題