C# 将listbox传输到datagridview

C# 将listbox传输到datagridview,c#,visual-studio,visual-studio-2010,C#,Visual Studio,Visual Studio 2010,打印收据时,一切正常。相反,添加订单时,只保存最后一个订单。我想拯救他们 这是我的打印代码: void printDocument_PrintPage(object sender, PrintPageEventArgs e) { Graphics graphics = e.Graphics; Font font = new Font("Courier New", 12); float fontHeight

打印收据时,一切正常。相反,添加订单时,只保存最后一个订单。我想拯救他们

这是我的打印代码:

void printDocument_PrintPage(object sender, PrintPageEventArgs e)
        {
            Graphics graphics = e.Graphics;

            Font font = new Font("Courier New", 12);
            float fontHeight = font.GetHeight();
            int startx = 10;
            int starty = 10;
            int offset = 30;

            graphics.DrawString("Ho-Ga Catering", new Font("Courier New", 14), new SolidBrush(Color.Black), startx, starty);

            foreach (TabProdukt produkty in produkt)
            {
                *****string produktDescription = produkty.Opis.PadRight(30);*****

                string produktTotal = String.Format("{0:c}", produkty.Cena);
                string productLine = produktDescription + produktTotal;
                graphics.DrawString(productLine, font, new SolidBrush(Color.Black), startx, starty + offset);
                offset = offset + (int)fontHeight + 5;
            }
            offset = offset + 20;
            graphics.DrawString("Do zapłaty ".PadRight(30) + String.Format("{0:c}", TransactionTotal), font, new SolidBrush(Color.Black), startx, starty + offset);
        }
这是添加订单的代码

private void BtnPay_Click(object sender, EventArgs e)
        {
            TabTranzakcja tranzakcja = new TabTranzakcja();
            TabPodsumowanie podsumowanie = new TabPodsumowanie();
            podsumowanie.DataID = DateTime.Now ;

            List<string> list2 = new List<string>();
            for (int a = 0; a < Dane_Klienta.Items.Count; a++)
                list2.Add(Dane_Klienta.Items[a].ToString());
            string lista2 = string.Join(",", list2.ToArray());
            podsumowanie.Klient= lista2;
            podsumowanie.Suma = TransactionTotal;

            foreach (TabProdukt produkty in produkt)
            {
                ***podsumowanie.Zamówienie = produkty.Opis;***
            }
            POSre.AddToTabPodsumowanies(podsumowanie);

            POSre.SaveChanges();
            MessageBox.Show("Zapisano");
以下是两个相关的屏幕截图:


我又删除了一些额外的空格,并试图改进语法。请确保我没有把意思改成不正确的东西。祝你好运:)
void updateZamówienie(object sender, EventArgs e)
{
        Button b = (Button)sender;
        TabProdukt p = (TabProdukt)b.Tag;
        produkt.Add(p);
        UpdateCustomerInformationPanel(p);
        TransactionTotal = TransactionTotal + (decimal)p.Cena;

        Zamówienie.SelectedIndex = Zamówienie.Items.Count - 1;
    }

    private void UpdateCustomerInformationPanel(TabProdukt produkty)
    {
        string currentDescription = produkty.Opis;
        string currentCena = string.Format("{0:c}", produkty.Cena);
        string currentDescriptionPadded = currentDescription.PadRight(15);