在ListView中添加扫描图像

时间:2013-07-04 12:04:22

标签: c# listview wia

我正在通过WIA扫描图像并将图像保存在List中。我想要的是,我想保存从列表中获取图像并在列表视图中显示它们。但我遇到了一个奇怪的问题。当我在c#window应用程序中单击“扫描”按钮时,我的列表仅保存最新图像,而我的列表计数器不会增加到2,它始终保持为1.因此,我的列表仅保存最新图像并覆盖上一图像。单击扫描按钮时,这是我的代码:

            List<Image> images = WIAScanner.Scan((string)lbDevices.SelectedItem);
            ImageList imageList1 = new ImageList();

            foreach (Image image in images)
            {
                pictureBox.Image = image;

                imageList1.Images.Add(image);

            }

                this.listView1.View = View.LargeIcon;
                imageList1.ImageSize = new Size(90, 90);
                listView1.LargeImageList = imageList1;

                for (int j = 0; j < imageList1.Images.Count; j++)
                {
                    ListViewItem item = new ListViewItem();
                    item.ImageIndex = j;
                    this.listView1.Items.Add(item);
                }

1 个答案:

答案 0 :(得分:1)

我认为您发布的代码是位于扫描按钮点击事件后面的代码。如果是这样,请将以下行放在click事件之外。

ImageList imageList1 = new ImageList();

使用此行,您将在每次开始新扫描时重置ImageList。把这一行放在你的点击方法之外,一切都应该没问题。