Поэтому всякий раз, когда я запускаю следующий код, он работает, когда в поле со списком есть значения, но если значение равно null
, оно отображается:
'Невозможно выполнить операцию '=' для System.Double и System.String.'
DataView dv = new DataView(dt);
dv.RowFilter =
"Price = '" + comboBox3.Text +
"' OR Model = '" + comboBox1.Text +
"' OR Supplier = '" + comboBox2.Text +
"' OR TotalPower = '" + comboBox6.Text +
"' OR Battery = '" + comboBox5.Text +
"' OR TireSize = '" + comboBox4.Text +
"' OR TireType = '" + comboBox9.Text +
"' OR Brakes = '" + comboBox8.Text +
"' OR WeightCapacity = '" + comboBox7.Text +
"' OR MinSpeed = '" + comboBox11.Text +
"' OR MaxSpeed = '" + comboBox10.Text + "'";
dataGridView.DataSource = dv;
'
вокруг значения, вы делаете его строкой для целей сравнения. Затем вы пытаетесь сравнить эту строку с числом (двойным). - person Llama   schedule 12.12.2018null
. Это может быть пустая строка или строка, содержащая словоnull
, или что-то еще, что ввел пользователь. Если вы знаете, что в поле ожидаются числа, не передавайте значениеText
. Добавьте надлежащую проверку, чтобы предотвратить ввод пользователем нечисловых данных. Используйтеdouble.TryParse()
, чтобы преобразовать значение вdouble
и обнаружить любые ошибки. - person Panagiotis Kanavos   schedule 12.12.2018