Looping through DataGridView Cells

2020-04-03 04:47发布

I am creating a program that generates a bar code and then prints the shipping labels.

I have a function that allows the user to upload a spreadsheet into the datagrid view. One of the column names is "Tracking Number".

I would like to be able to loop through each cell that has a tracking number and then generate a barcode into a a new cell in a column called "barcode".

I understand there is a loop function for this but I have never used it before.

The code that generates the barcode is the following , it calls two classes:

 Image barc = Rendering.MakeBarcodeImage(txtTrack.Text, int.Parse(txtWidth.Text), true);
 pictBarcode.Image = barc;

Any Help would be much appreciated. I will happily answer any other questions.

2条回答
神经病院院长
2楼-- · 2020-04-03 05:00

You can loop through a DataGridView using the following:

foreach (DataGridViewRow row in dgvNameOfYourGrid.Rows)
{
    if (row["Tracking Number"].ToString != "")
    {
        string trackingNumber = row.Cells["Tracking Number"].ToString();

        // do stuff with the tracking number
    }
}

But to display the barcode in another cell you will need to convert it to a DataGridViewImageCell (or preferable the whole column into a DataGridViewImageColumn).

查看更多
家丑人穷心不美
3楼-- · 2020-04-03 05:01

To iterate through every cell, you can use foreach loops

foreach(DataGridViewRow row in yourDataGridView.Rows)
{
    foreach(DataGridViewCell cell in row.Cells)
    {
        //do operations with cell
    }
}
查看更多
登录 后发表回答