當我嘗試一個新的行中的虛擬模式添加到一個DataGridView這樣的:DataGridView控件處於虛擬模式時無法添加行?
dataGridViewX1.Rows.Add(new string[] { "Parker", "Seattle" });
出現以下異常:當 DataGridView控件是在虛擬
操作無效模式?
當我嘗試一個新的行中的虛擬模式添加到一個DataGridView這樣的:DataGridView控件處於虛擬模式時無法添加行?
dataGridViewX1.Rows.Add(new string[] { "Parker", "Seattle" });
出現以下異常:當 DataGridView控件是在虛擬
操作無效模式?
當DataGridView
是Virtual mode(DataGridView.VirtualMode = true
),這意味着,DataGridView
的內容是從通過暴露在DataGridView
事件自身以外的來源提供。如果您打算讓您的DataGridView是在虛擬模式下,您需要將新信息添加到底層源,然後告訴DataGridView
有另一行,像這樣:
// add information to the underlying source
this.dataGridView.RowCount++;
如果您不打算在虛擬模式下使用DataGridView
,可以通過將DataGridView.VirtualMode
設置爲false
來關閉虛擬模式。
您需要使用數據源來添加新行,它會自動顯示在DataGridView中。
您可能已經完成了其他問題推薦的所有內容,但將YourDataGridView.DataSource設置爲某處。
它一定不能被設置爲虛擬,否則當您嘗試設置RowCount時,您會收到類似的消息,並在您嘗試添加時得到完全的消息。
如果您到目前爲止「誤用」了DataSource作爲您的事件處理程序可用於解決數據源的「郵箱」實例變量,請考慮將其填充到Tag屬性中,並使用您需要的該屬性的引用使用適當的類型轉換)。