1

次のコードを使用してセルに値を入力し、データテーブルから値を取得してみました。しかし、エラーが発生します。以下はエラーです:

DataGridViewで次の例外が発生しました:System.Exception:0.91はInt32の有効な値ではありません。--->

このエラーを解消する方法はありません。助けが必要。

編集:-

private void DataGrid_CellEnter(object sender, DataGridViewCellEventArgs e)
    {if (DataGrid.CurrentCell.ColumnIndex == 6)
            {
                string getprice = "SELECT " + DataGrid.SelectedRows[0].Cells[3].Value.ToString() + " FROM " +
                    "" + DataGrid.SelectedRows[0].Cells[2].Value.ToString() + "_Mstr " +
                    "WHERE Size1 = '" + DataGrid.SelectedRows[0].Cells[4].Value.ToString() + "'";
                DataTable dt = globalData.q.select(getprice);
                double check;
                if (double.TryParse(dt.Rows[0][0].ToString(), out check))
                {
                    DataGrid.SelectedRows[0].Cells[6].Value = dt.Rows[0][0].ToString().Trim();
                }
            }
        }
4

1 に答える 1

0

おそらく、intを期待している間、SQLはdoubleです。データ型を変更するか、変換を強制します(つまり、double.Parseの代わりにConvert.ToInt32(xxx)を使用します)

于 2013-02-18T11:49:23.137 に答える