0

WIA経由で画像をスキャンし、画像をリストに保存しています。私が欲しいのは、リストから画像を取得して保存し、リストビューに表示したいということです。しかし、私は奇妙な問題を抱えています。私のC#ウィンドウアプリケーションで[スキャン]ボタンをクリックすると、リストに最新の画像のみが保存され、リストカウンターが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);
                }
4

1 に答える 1

1

あなたが投稿したコードは、スキャン ボタンのクリック イベントの背後にあるコードだと思います。その場合は、次の行をクリック イベントの外に置きます。

ImageList imageList1 = new ImageList();

この行を使用すると、新しいスキャンを開始するたびに ImageList がリセットされます。この行をクリック メソッドの外に置くと、すべてうまくいくはずです。

于 2013-07-04T12:10:35.317 に答える