2列のデータを掛けて3列目に表示したい。
例えば:
1st Column: Quantity
2nd Column: Rate
3rd Column: Price
ユーザーが数量とレートのデータを入力するとQuantity=2
、rate=50
自動的に価格列に100
表示されるように乗算したいと思います。
同時に、ユーザーが数量とレートのデータを入力するとPrice=100
、rate=50
自動的に数量列に2
表示されるように分割したいと思います。
そして、ユーザーが のように数量とレートのデータを入力するとPrice=100
、Quantity=2
自動的に [レート] 列に [I want 50
to be] が表示されます。
この 3 つは同じ datagridview で発生します。ユーザーは、この 3 つのフィールドのいずれか 2 つだけを入力すると、3 つ目が自動的に表示されます。
C#、VS2008、SQL 2008 の使用
private void dataGridView2_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
int quantity,rate;
for (int i = 0; i < dataGridView2.Rows.Count; i++)
{
if(int.TryParse(dataGridView2.Rows[i].Cells[1].Value.ToString(), out quantity) && int.TryParse(dataGridView2.Rows[i].Cells[2].Value.ToString(), out rate))
{
int price = quantity * rate; dataGridView2.Rows[i].Cells[3].Value = price.ToString();
}
}
}
このコードを書きます。エラーが表示されます。オブジェクト参照がオブジェクトのインスタンスに設定されていません
if(int.TryParse(dataGridView2.Rows[i].Cells[1].Value.ToString(), out quantity) && int.TryParse(dataGridView2.Rows[i].Cells[2].Value.ToString(), out rate))
この行。
私はこのようにしたい。ユーザーは、この 3 つのフィールドのうち任意の 2 つのフィールドに入力できます。3 つ目は自動的に取得されます。