DataGridView
のイベントで winform に画像を表示するコードを書きましたCellFormatting
。うまく機能しますが、画像に変更したセルは継続的に更新されます。私は何をすべきか?
これは私のコードですCellFormatting
:
dgvUnknownPayed.Rows[e.RowIndex].Cells[colStateImage.Name].Value = Properties.Resources.undo;
DataGridView
のイベントで winform に画像を表示するコードを書きましたCellFormatting
。うまく機能しますが、画像に変更したセルは継続的に更新されます。私は何をすべきか?
これは私のコードですCellFormatting
:
dgvUnknownPayed.Rows[e.RowIndex].Cells[colStateImage.Name].Value = Properties.Resources.undo;
セルを直接変更する代わりに、データソースを変更する必要があります。
Datagridview1.datasouce = datatable1.defaultview();
foreach (DataRow row in datatable1.Rows)
{
row.BeginEdit();
row[2] = ‘Something_Here’;
row.EndEdit();
}
すべての更新を停止する場合は、次を使用します。
DataGrid.SuspendLayout(); //Stops refreshing
DataGrid.ResumeLayout(); //Re-Enable refreshing
DataTableは、この場合、データを にバインドするために使用する .Net オブジェクトですDataGridView
。
DataTable datatable1 = new DataTable
の新しいインスタンスを作成しますDataTable
。
Datagridview1.datasouce = datatable1.defaultview();
グリッドのデータソースとして datatable1 をバインドします。このようにして、テーブルが変更されるたびに、グリッドが更新されます。
このテーブルを使用するには、このように進めることができます。(これは一例です)
table.Columns.Add("Division", typeof(int));
ここでは、列の名前とそこに入力されるデータ型を指定します。SQL Server のように。table.Rows.Add(Something)
が、この場合はInteger
.これと同じくらい簡単です。必要に応じてタイプを変更しInteger
ます。これは単純な例であることを忘れないでください。さらに多くの列と行を追加できます。