0

手動で入力することになっているDataGridviewを使用しました(データソースが指定されていません)。最初の行(index-0)の内容を取得したい。しかし、それは私にヌルのセル値を与えます。

コード

DataTable dt = new DataTable();
DataRow dr;

dt.Columns.Add("Description");
dt.Columns.Add("Unit Price");
dt.Columns.Add("Quantity");
dt.Columns.Add("Tot");

dr = dt.NewRow();

dr[0] = dataGridViewA_General.Rows[0].Cells[1].Value; //these values are null
dr[1] = dataGridViewA_General.Rows[0].Cells[2].Value; //these values are null
dr[2] = dataGridViewA_General.Rows[0].Cells[3].Value; //these values are null
dr[3] = dataGridViewA_General.Rows[0].Cells[4].Value; //these values are null

dt.Rows.Add(dr);

前もって感謝します

更新しました

// dataGridViewA_General

this.dataGridViewA_General.ColumnHeadersHeightSizeMode =         System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridViewA_General.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.Column_A_item_code,
this.Column_A_description,
this.Column_A_qntity,
this.Column_A_unit_price,
this.Column_A_list_total});

// Column_A_description

this.Column_A_description.AutoSizeMode =  System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.Column_A_description.HeaderText = "Description";
this.Column_A_description.Name = "Column_A_description";

// Instantiate
private System.Windows.Forms.DataGridView dataGridViewA_General;
private System.Windows.Forms.DataGridViewTextBoxColumn Column_A_description;

(残りの列も同様に定義されます。)

4

2 に答える 2

3

行を DataTable に追加する必要があります。

dt.Rows.Add(dr);

NewRow(); 空白行を作成するだけなので、手動で追加する必要があります。

また、行自体に何も入れていないため、何も返されません。

于 2012-09-14T14:29:06.307 に答える
0

私は論理的な間違いを犯し、データを入力した後、コードが期待どおりに実行されませんでした。実際、上記のコードは正しいです。皆様の貴重な貢献に感謝いたします。

于 2012-09-15T07:02:29.017 に答える