0

私は .Net の初心者なので、私の質問は素朴に見えるかもしれません。

WinForm プロジェクトに DataGridView テーブルがあります。 ここに画像の説明を入力

3 つの列 (image、combobox、および textBox 列) が含まれています。

このテーブルに行を作成して添付する方法はありますか?

前もって感謝します!

4

3 に答える 3

1

データソースを作成してから、データソースをグリッドのDataSourceプロパティにバインドします。次に、データソースにレコードを追加します。

// create data source
BindingList<Shape> dataSource = new BindingList<Shape>();

// add record to data source
dataSource.Add(new Shape("Some Contour", "Circle", "Some Name"));

// bind data source
yourDataGridView.DataSource = typeof(BindingList<Shape>);
yourDataGridView.DataSource = dataSource;

各列のDataPropertyNameを、Shapeクラスのフィールドの名前と一致するように設定します。

DataGridViewTextBoxColumn colName = new DataGridViewTextBoxColumn();
colName.DataPropertyName = "Name";

yourDataGridView.Columns.Add(colName );

ただし、代わりに仮想モードを使用して、データを分離および分離しておくことをお勧めします。

于 2013-01-23T16:13:54.377 に答える
1

ユーザーからの入力を受け入れる場合は、ユーザーが入力できるフォームをこのページに作成する必要があります。これらの値を取得して、DataTable に追加します。以下は、それを示すサンプル スニペットです。

DataTable dt = new DataTable();
dt.Columns.Add("Contour",typeof(string));  //I am assuming that you will store path 
                                           //of image in the DataTable
dt.Columns.Add("Shape",typeof(string));
dt.Columns.Add("Name",typeof(string));

ユーザーからの入力を受け取るたびに、DataTable に新しい行を追加し続けます。

DataRow row = dt.NewRow();
row["Contour"] = txtContourPath.Text;
row["Shape"] = ddlShape.SelectedValue;
row["Name"] = txtName.Text;
dt.Rows.Add(row);

上記の DataTable を GridView の DataSource プロパティに代入します。

dgv.DataSource = dt;
于 2013-01-23T16:19:43.143 に答える
1

メソッドを使用できます:

  1. dataGridView1.Rows.Insert(...)
  2. dataGridView1.Rows.Add(...)
  3. Jay の答え: dataGridView1.DataSource = dataSource; を使用します。

お役に立てれば幸いです。

于 2013-01-23T16:28:47.533 に答える