3

DataGridViewc#で cell の値を変更しようとしました。セルに「こんにちは」と書くことさえできません。エラーはどこにありますか。足りない部分とは?

ボタンをクリックしても何も変わりません。エラーなし、変更なし。

private void button1_Click(object sender, EventArgs e)
{
    dataGridView1.ReadOnly = false;
    dataGridView1.BeginEdit(true);
    dataGridView1.Rows[0].Cells[0].Value = "Hello";
    dataGridView1[1, 1].Value = "Hello";
}
4

2 に答える 2

2

これが役立つかどうかはわかりませんが、次のことを試してください。

  • 基になるデータ ソースは編集をサポートしています。
  • DataGridViewコントロールが有効になります。
  • EditModeプロパティ値は ではありませんEditProgrammatically
  • ReadOnlyセル、行、列、およびコントロールのプロパティはすべて に設定されていfalseます。

MSDNから取得。

于 2013-05-31T15:56:12.197 に答える
0

セルの値を編集する方法の 1 つは、その値のプロパティに文字列を割り当てることです。

例: データ グリッドの名前が の場合grdStock、現在のセルは次のように編集できます。

grdStock.CurrentCell.Value = "100";

上記は、編集するセルを選択した場合に機能します。

ただし、参照されたセルを編集する必要がある場合、つまり、セル参照によって編集するセルを見つけるようにプログラムに指示する場合があります。

例えば:

grdStock[1, grdStock.CurrentCell.RowIndex].Value = "BCS001";
grdStock[2, grdStock.CurrentCell.RowIndex].Value = "Cashew Nuts";

上記は選択した行で機能し、編集する列がわかります。これは間違いなくセルを編集します。ただし、グリッドがデータにバインドされている場合は、データを保存する方法も必要になる場合があることに注意してください。私は個人的にバインドされたコントロールを使用していないため、データ ソースに自動的に書き戻すこのオプションについては触れていません。しかし、グリッドを編集する目的では、これは完全に機能します。

それが役立つことを願っています、

サミュエル

于 2013-11-05T09:18:50.937 に答える