Представление таблицы данных задача вычисления значений ячеек
Я создаю приложение windows с помощью c# 2010, в моем приложении я использую datagridview для выставления счетов, здесь мой вид сетки имеет 6 ячеек.
Я ввожу значения ячеек первого раза на 2-й и 3-й ячейках, которые вычисляют значения ячеек времени, показанные на 5-й ячейке. Это правильно,
Но опять же во второй раз, когда я ввожу значения в ячейку 2-ю, 3-ю и 4-ю ячейки, которые вычисляют значения, показанные только в 6-й ячейке, но вычисляют результаты, показанные снова в 5-й ячейке, я хочу, чтобы мои вычислительные значения показывались только в 6-й ячейке. Не хочу снова 5-ю клетку.
Как решить эту ошибку. Любое одно дать мне идеи.
Что я уже пробовал:
Представление Таблицы данных задача вычисления значений ячеек
[Редактировать код OP из комментариев]
Это мой код
foreach (DataGridViewRow row in dataGridView1.Rows) { if (row.Cells[4].Value != DBNull.Value && row.Cells[6].Value != DBNull.Value) { float iWei = float.Parse(dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString()); float iPer = float.Parse(dataGridView1.Rows[e.RowIndex].Cells[3].Value.ToString()); dataGridView1.Rows[e.RowIndex].Cells[5].Value = (iWei * iPer) / 100; } else { float iWei = float.Parse(dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString()); float iPer = float.Parse(dataGridView1.Rows[e.RowIndex].Cells[3].Value.ToString()); float iWas = float.Parse(dataGridView1.Rows[e.RowIndex].Cells[4].Value.ToString()); dataGridView1.Rows[e.RowIndex].Cells[6].Value = (iPer + iWas) * iWei; } } }
CHill60
Вам действительно придется показать нам код, который выполняет вычисления!
Помните, что мы не можем видеть ваш экран, исследовать ваш жесткий диск или читать ваши мысли.
Boopalslm
это мой код
по каждому элементу (ячейки datagridviewrow строку в dataGridView1.Строк)
{
если (строки.Клеток[4].Значение != Значение dbnull.Значение& & amp; строка.Ячейки[6]. Значение != DBNull.Ценность)
{
float iWei = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[2].Значение.Метод toString());
поплавок ИПР = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[3].Значение.Метод toString());
dataGridView1.Ряды[электронный.Параметр rowindex].Ячейки[5]. Значение = (iWei * iPer) / 100;
}
ещё
{
float iWei = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[2].Значение.Метод toString());
поплавок ИПР = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[3].Значение.Метод toString());
поплавок радостно = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[4].Значение.Метод toString());
dataGridView1.Ряды[электронный.Параметр rowindex].Ячейки[6]. значение = (iPer + iWas) * iWei;
}
}
}
CHill60
Если бы вы использовали Улучшить вопрос ссылка Вам бы не пришлось выкладывать код 3 раза! Решает ли решение 1 вашу проблему?
Cristina Carrasco Angulo
Не могли бы вы показать код, пожалуйста?
Boopalslm
это мой код
по каждому элементу (ячейки datagridviewrow строку в dataGridView1.Строк)
{
если (строки.Клеток[4].Значение != Значение dbnull.Значение& & amp; строка.Ячейки[6]. Значение != DBNull.Ценность)
{
float iWei = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[2].Значение.Метод toString());
поплавок ИПР = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[3].Значение.Метод toString());
dataGridView1.Ряды[электронный.Параметр rowindex].Ячейки[5]. Значение = (iWei * iPer) / 100;
}
ещё
{
float iWei = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[2].Значение.Метод toString());
поплавок ИПР = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[3].Значение.Метод toString());
поплавок радостно = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[4].Значение.Метод toString());
dataGridView1.Ряды[электронный.Параметр rowindex].Ячейки[6]. значение = (iPer + iWas) * iWei;
}
}
}
Awesh Vishwakarma
Опубликуйте фрагмент своего кода, если вам действительно нужна помощь...
Boopalslm
это мой код
по каждому элементу (ячейки datagridviewrow строку в dataGridView1.Строк)
{
если (строки.Клеток[4].Значение != Значение dbnull.Значение& & amp; строка.Ячейки[6]. Значение != DBNull.Ценность)
{
float iWei = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[2].Значение.Метод toString());
поплавок ИПР = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[3].Значение.Метод toString());
dataGridView1.Ряды[электронный.Параметр rowindex].Ячейки[5]. Значение = (iWei * iPer) / 100;
}
ещё
{
float iWei = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[2].Значение.Метод toString());
поплавок ИПР = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[3].Значение.Метод toString());
поплавок радостно = поплавок.Синтаксический анализ(dataGridView1.Ряды[электронный.Параметр rowindex].Клеток[4].Значение.Метод toString());
dataGridView1.Ряды[электронный.Параметр rowindex].Ячейки[6]. значение = (iPer + iWas) * iWei;
}
}
}
Awesh Vishwakarma
Итак, вы хотите показать результат расчета в 5-й ячейке, когда вводите значения во 2-ю и 3-ю ячейки.
и если вы вводите значения во 2-ю, 3-ю и 4-ю ячейку, вы хотите показать результат расчета только в 6-й ячейке, а не в 5-й.
Я прав?