2010-12-29 8 views
0

とし、DataGridView dgvdgv.DataSource = dataTableとします。
dataTable = new DataTable()とします。DataGridView.DataSourceはDataGridView UIと同期していますか?

質問は次のとおりです:dgvからアクセスする値はdgv[i,j]のように常にdataTableにありますか?

+0

してみましたか? – decyclone

+0

どうすればそれを確実にすることができますか?あなたはそれを体験するだけで何かを証明することはできません。おそらく私のテストには現れないケースがあります。 –

答えて

0

答えは「はい」だと思います。

DataGridView.DataGridViewDataConnection dataConnection = dataGridView.DataConnection; 
if (dataConnection == null) 
{ 
    return null; 
} 
if (dataConnection.CurrencyManager.Count <= rowIndex) 
{ 
    return this.Properties.GetObject(PropCellValue); 
} 
return dataConnection.GetValue(this.OwningColumn.BoundColumnIndex, this.ColumnIndex, rowIndex); 
:あなたは ReflectorDataGridViewCell.Valueプロパティを見て、その曲がりくねった道をたどる場合は、(非連結コントロールの場合に対処するため、ノイズの束の後に)このようになりますいくつかのコードで終わるだろう

プロパティのDataGridViewCellにアクセスすると、データソースに直接アクセスしていることがわかります。言い換えれば、DataGridViewの値がの後に更新された場合、対応する行がDataTableに更新されることがある遅れた同期プロセスではありません。 1つはちょうど他にちょうど向いている。

関連する問題