2012-03-26 112 views
9

我想在特定索引處的DataGridView中插入一個新的DataGridViewRow。如果我只是創建一個新的行狀在DataGridView中插入行(C#)

DataGridViewRow dgwr = new DataGridViewRow(); 
datagridview1.Rows.Insert(index, dgwr); 

我不會得到DataGridView中的「設置」例如像我的「單元格格式」將爲0,如果我用這不會發生。

DataGridView1.Add(); 

不過話又說回來,那麼我不能選擇在哪裏,我想我的文章列表...

反正是有這些優勢結合起來?

/尼克

回答

5
grid.Rows.Insert(index, 1); 
var addedRow = grid.Rows[index]; 

這會插入1分空模板排在「索引」,然後只需訪問行中「索引」。 第二行用於訪問剛剛添加的行。

還可以縮短,如果你有知道你想行值:

grid.Rows.Insert(index, FirstName, LastName, BirthDate, Etc); 

只是要確保它與同步列在網格訂購,並與這些領域將自動進行排。

+0

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.rows.aspx – 2012-03-26 06:38:00

+0

謝謝!但是,我仍然不知道什麼值,所以我只是喜歡Rows [i] .Cells就像其他行(與DataGridView1.ColumnCount相同的「計數」)。我在使用單元格時如何做到這一點? :) – Nick3 2012-03-26 07:04:16

+0

@ Nick3您可以將它用作網格中的任何其他行。你的意思是與細胞一起工作? – SimpleVar 2012-03-26 15:04:16

1

DataGridViewDataGridRowView只是數據源和數據源中的一行的可視化表示。將新行添加到數據源後,應在DataView中顯示新的可視行。

如果要在添加新行的時候獲取視圖行,請處理RowsAdded事件。

+0

我沒有數據庫,我只是手動在行上添加文本。但是,謝謝! – Nick3 2012-03-26 07:04:59