Member 11302407 Ответов: 1

Как распечатать квитанцию с помощью средства просмотра отчетов в C#


У меня есть форма "продажи". Я добавил столбцы вручную в dgv. Это прекрасно работает.
Но когда я попытался связать его с моим новым классом "квитанция", он показал мне ошибку, что строки не могут быть программно добавлены в dgv, когда управление данными привязано.

Я сталкиваюсь с этим вопросом уже два дня. Все, кто работал в этом сценарии, пожалуйста, помогите мне. Какие-нибудь указания? <b

Что я уже пробовал:

Я не мог как следует все опробовать. Я много искал, но безуспешно...

И еще я попробовал это сделать
Datagridview1.источник данных=ReceiptbindingSource

Но те же строки ошибок не могут быть добавлены программно в datagridview при привязке элемента управления данными

1 Ответов

Рейтинг:
1

CHill60

Какое это имеет отношение к названию вашего поста?
Проблема ясна - вы не можете одновременно вручную добавлять строки и привязывать элемент управления.

Однако вы можете добавить строки в набор данных ... смотрите решение по этой ссылке
Добавить Строки С Привязкой К Данным Объекта Datagridview[^]


Member 11302407

это мой код, который я использую .

если (dataGridView1.Строк.Count > 0)
{

DataTable dt = dataGridView1.DataSource as DataTable;
//Проверьте, существует ли идентификатор продукта с той же ценой
по каждому элементу (ячейки datagridviewrow строку в dataGridView1.Строк)
{
dataGridView1.AllowUserToAddRows = true ;
если (конвертировать.ToString(row.Cells[1].Value) == tb_ino.Текст )
{
//Обновить количество найденной строки
Ящик для сообщений.Шоу("совпало!");
//row.cells[3] - значение для qty
//умножьте это на row.cells[4]
ряд.Ячейки[3].Значение = Преобразовать.ToString(Конвертировать.ToInt16(tb_qty.Text) + конвертировать.ToInt16(row.Cells[3].Value));
ряд.Ячейки[5].Значение=(Преобразовать.ToInt16(row.Cells[3].Value) * преобразовать.ToInt16(row.Cells[4].Value)).Метод toString();
dataGridView1.Источник данных = ДТ;
нашли = истина;
}

}
если (!найдено)
{
dataGridView1.AllowUserToAddRows = true;


//Добавить строку в представление сетки
ДТ.Строк.Добавить(dataGridView1.Количество строк в R[0], р[1], tb_qty.Текст.Отделка(), р[4], Цена);
ДТ.Метод acceptchanges();
dataGridView1.Источник данных = ДТ;

}

}

Member 11302407

Кроме того, теперь с помощью этого кода я получаю ссылку на объект исключения, не установленную на экземпляр.

CHill60

На какой линии?