Нужна помощь с программированием на C# Может ли кто то подсказать код(способ,действие),который анализирует значения в DataGridViev,вычитая значения в таблице из заданного значения и выбирая наименьшее по модулю,чтобы в итоге это значение выделялось в таблице либо цветом либо еще как нибудь Вот код моей программы:
private void button4_Click(object sender, EventArgs e)
{
if (!CheckInput_Int(textBox2) ||
!CheckInput_Double(textBox8) ||
!CheckInput_Double(textBox9) ||
!CheckInput_Double(textBox10) ||
!CheckInput_Double(textBox11) ||
!CheckInput_Double(textBox6) ||
!CheckInput_Double(textBox7))
{
MessageBox.Show("Проверьте значения полей!", "Внимание!",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
return;
}
int gg = Convert.ToInt32(textBox2.Text);
dataGridView1.RowCount = gg;
double
t_kond = Convert.ToDouble(textBox8.Text), t_dear = Convert.ToDouble(textBox9.Text),
t_oe = Convert.ToDouble(textBox10.Text), t_egu = Convert.ToDouble(textBox11.Text),
z = Convert.ToDouble(textBox2.Text), alfa = 0.9, tp_pereddear = t_dear - 10,
t_nach = Convert.ToDouble(textBox6.Text), p_pg = Convert.ToDouble(textBox7.Text),
t_pv = ((t_nach - t_kond - t_oe - t_egu) / (z + 1)),
t_pvopt = t_nach - t_pv,
t_pvek = alfa * (t_pvopt - t_kond) + t_kond;
double yBase = t_kond + t_oe + t_egu + t_pv;
double[] x = new double[gg];
double[] y = new double[gg];
for (int i = 0; i < gg; i++)
{
x[i] = i + 1;
y[i] = yBase + t_pv * i;
dataGridView1.Rows[i].Cells[0].Value = x[i].ToString();
dataGridView1.Rows[i].Cells[1].Value = y[i].ToString();
}
}
}
}
private void ColorCellWithClosestValue(double aValue, Color aColor)
{
// coordinates of cell with closest value
int col = -1;
int row = -1;
// current minimal difference
double delta = 0;
// current cell value
double value;
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
for (int j = 0; j < dataGridView1.Rows[i].Cells.Count; j++)
{
if (double.TryParse(Convert.ToString(dataGridView1.Rows[i].Cells[j].Value), out value))
{
if (Math.Abs(aValue - value) < delta)
{
delta = Math.Abs(aValue - value);
row = i;
col = j;
}
}
}
}
if (row >= 0 && col >= 0)
dataGridView1.Rows[row].Cells[col].Style.ForeColor = aColor;
}
private void btnCompareClick(object sender, EventArgs e)
{
// call it like this:
double value;
if (double.TryParse(textboxCompare.Text, out value))
{
ColorCellWithClosestValue(value, Color.Red);
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пытаюсь получить все json файлы из папки StreamAssets на Android использую такой код
ВопросКак можно реализовать визуализацию гексагональной сетки на WPF, при том что каждая клеточка этой сетки является отдельным объектом,...