Как корректировать значения в элементе управления datagridview в Windows с#
У меня есть один DataGridView, и он содержит пять столбцов, то есть Name | Apr | May | Jun | July.
Практическое руководство представляет ценности как
Name |Apr | May | Jun | July Fee1 |100 | 100 | 100 | 100 Fee2 |500 | 500 | 500 | 500 Fee3 |700 | 700 | 700 | 700
примечание: эти значения берутся из таблицы sql
Теперь мой вопрос заключается в том, что если я заполню Rs. 600 в текстовом поле и нажму на кнопку, то я хочу представить свой DataGridView следующим образом
Name |Apr | May| Jun| July Fee1 |100 | 0 | 0 | 0 Fee2 |500 | 0 | 0 | 0 Fee3 | 0 | 0 | 0 | 0
если я заполню Rs. 1500 в текстовом поле и нажму на кнопку, то я хочу представить свой DataGridView следующим образом
Name |Apr | May| Jun| July Fee1 |100 |100 | 0 | 0 Fee2 |500 |100 | 0 | 0 Fee3 |700 | 0 | 0 | 0
точно так же для всех столбцов я хочу, чтобы plz действительно помог...........
Karthik_Mahalingam
имеет ли gridview всегда только 3 строки?
Member 12245539
Нет он будет увеличиваться в соответствии с требованиями
Karthik_Mahalingam
ладно.
Karthik_Mahalingam
несколько фиксированных столбцов?
Member 12245539
да
Karthik_Mahalingam
проверьте мое решение.
Member 12245539
Он прекрасно работает, и извините, что я так поздно вам это сказал. Перед именем e. i NameId доступен еще один столбец, а NameId скрыт. Без столбца NameId он работает отлично, но если я добавлю столбец nameId, то получу ошибку
"Входная строка не была в правильном perfomat"
Кроме того, если сумма всех столбцов равна 10000 и я ввожу 10100 в текстовое поле, то он должен показать сообщение (Plz chech your entry).
Member 12245539
Я получил за игнорирование имени столбца
Я могу это сделать
"для (int i = 2; i < Dgv.Columns.Граф; i++)"
вместо
для (int i = 1; i < Dgv.Columns.Граф; i++)
Но сообщение мне нужно... для увеличения суммы......
Karthik_Mahalingam
для (int i = 1; i < Dgv.Columns.Граф; i++
это сделает свою работу.
какое послание?
Member 12245539
Если сумма всех столбцов равна 10000 и я ввожу 10100 в текстовое поле, то он должен показать сообщение (Plz chech your entry).
Karthik_Mahalingam
попробовать это
int amount = конвертировать.ToInt32(textbox1 элемент.Текст.Отделка());
для (int i = 2; i < Dgv.Columns.Граф; i++)
{
по каждому элементу (ячейки datagridviewrow строку в dgv.Строк)
{
int value = Convert.ToInt32(row. Cells[i]. Value);
если (сумма >= значение)
сумма = сумма-значение;
иначе если (сумма = = 0)
ряд.Ячейки[i]. значение = сумма;
ещё
{
ряд.Ячейки[i]. значение = сумма;
сумма = 0;
}
}
}
если (сумма > 0)
{
Ящик для сообщений.Показать ("пожалуйста, проверьте сумму");
}
Member 12245539
Большое спасибо!!!!!!
Karthik_Mahalingam
Добро пожаловать
Member 12245539
Мистер Картика, пожалуйста, помогите плз!!!!!!!
Ссылка находится ниже.
http://www.codeproject.com/Questions/1121112/How-to-sum-datagridview-column-in-last-column-thro
Karthik_Mahalingam
Привет сегодня я немного занят, разберусь с этим позже вечером.
Member 12245539
ХОРОШО СПАСИБО
Karthik_Mahalingam
кажется, вопрос решен.
Member 12245539
Нет, сэр, я все еще жду.......
Karthik_Mahalingam
я не получаю полной бизнес-логики.
Member 12245539
Это элемент управления DataGridView. Значения берутся из таблицы sql.
S_Id | Apr | May | Jun / Fine / Total
1001 | 100 | 100 | 100 | 0 | 0
1002 | 0 | 200 | 200 | 0 | 0
1003 | 300 | 200 | 200 | 0 | 0
Кроме того,
Есть три галочки также доступен на правую сторону datagridview в название Apr_CheckBox, May_CheckBox &амп; Jun_CheckBox.
Теперь мой вопрос, если я нажму на Apr_CheckBox, то значение столбца DataGridView Apr должно отображаться в последнем столбце, т. е. общее количество всех строк, таких как
S_Id | Apr | May | Jun / Fine / Total
1001 | 100 | 100 | 100 | 0 | 100
1002 | 0 | 200 | 200 | 0 | 0
1003 | 300 | 200 | 200 | 0 | 100
кроме того.
Одна формула должна быть там для тонкой колонки. Если дата ПК(системы) - 20.04.2016, то он должен посчитать дни с 15.04.2016 по 20.04.2016 и умножить на 5. После умножения он должен показать значения умножения в тонком столбце. любить
Предположим, что между 16.04.2016 и 20.04.2016 днями будет 5.
S_Id | Apr | May | Jun / Fine / Total
1001 | 100 | 100 | 100 | 25 | 100
1002 | 200 | 200 | 200 | 0 | 100
1003 | 300 | 200 | 200 | 25 | 100
аналогично для еще двух колонок май и июнь.
Возможно, это и понятно.......
Сэр плз смотрите.......
Karthik_Mahalingam
я понял сначала requiremnt
второй-это нормально с 15-го числа месяца ?
Karthik_Mahalingam
у вас есть team viewer?
Member 12245539
- Да, видел........
Karthik_Mahalingam
приходите в интернет после 7 вечера по восточному времени
Member 12245539
ОК
Karthik_Mahalingam
вы из Индии
Member 12245539
Да
Индия
Нью-Дели
Karthik_Mahalingam
Хорошо... хорошо
Member 12245539
Босс, я вернулся........
Karthik_Mahalingam
сэр, только что добрался до дома, пингуйте меня, если онлайн
Member 12245539
ладно Должен ли я сообщить удостоверение личности и пропуск??
Karthik_Mahalingam
да
Member 12245539
185 888 701
2330
Karthik_Mahalingam
неверный пароль
Member 12245539
6618
Karthik_Mahalingam
ладно
Member 12245539
Сэр, это сделано???
Karthik_Mahalingam
- нет, сэр, я в него не заглядывал.
в тот день коннектоин отключился. coundnt см.
Member 12245539
- Хорошо, Сэр...
В соответствии с вашей рекомендацией я это сделал. И сумма всех строк работает.Но прекрасная схема должна быть реализована...
Karthik_Mahalingam
возьмите ручку и бумагу, нарисуйте блок-схему и преобразуйте ее в алгоритм, а затем Закодируйте.
даже я собираюсь сделать то же самое, какой бы ни была ваша логика
Member 12245539
ОКЗ....
Спасибо......
Karthik_Mahalingam
хмм
Member 12245539
Нет он будет увеличиваться в соответствии с требованиями
Richard MacCutchan
Вам нужно написать обработчик событий для нажатия кнопки, чтобы изменить значения в соответствии с вашими требованиями. В чем проблема?
Maciej Los
Не ясно! Пожалуйста, будьте более конкретны и предоставьте более подробную информацию о ваших требованиях. Мы не можем читать в твоих мыслях и не видим твоего экрана.