winform利用ImageList控件和ListView控件組合制作圖片文件瀏覽器


winform利用ImageList控件和ListView控件組合制作圖片文件瀏覽器,見圖,比較簡單,實現LISTVIEW顯示文件夾圖片功能。

1.選擇文件夾功能代碼:

            folderBrowserDialog1.SelectedPath = textBox2.Text;
           if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                if (this.folderBrowserDialog1.SelectedPath.Trim() != "")
                    textBox2.Text = this.folderBrowserDialog1.SelectedPath.Trim();
            }

2.確定按鈕代碼,當然以下代碼也可以寫到選擇文件夾的瀏覽按鈕中,在此只是為了更能說明問題。

  確定按鈕實現從選擇的文件夾中把圖片文件顯示到Listview控件中,見代碼:

            if (textBox2.Text.Trim() == "") return;

            imageList1.Images.Clear();
            listView1.Items.Clear();
            imageLists.Clear();
                //刷新Listview
                bindListView();

    //下面是方法
        private void bindListView()
        {
            DirectoryInfo dir = new DirectoryInfo(@textBox2.Text.Trim());

            string[] files = new string[100];

            string ext = "";

            foreach (FileInfo d in dir.GetFiles())
            {
                ext = System.IO.Path.GetExtension(textBox2.Text.Trim() + d.Name);
                if (ext == ".jpg" || ext == ".jpeg") //在此只顯示Jpg
                {
                    imageLists.Add(textBox2.Text.Trim() +"\\"+ d.Name);
                }
            }
            for (int i = 0; i < imageLists.Count; i++)
            {
                imageList1.Images.Add(System.Drawing.Image.FromFile(imageLists[i].ToString()));
                listView1.Items.Add(System.IO.Path.GetFileName(imageLists[i].ToString()), i);
                listView1.Items[i].ImageIndex = i;
                listView1.Items[i].Name = imageLists[i].ToString();
            }

        }

  需要事先要在代碼里定義:

     List<string> imageLists = new List<string>();

     private string path= Application.StartupPath;

    需要在窗體增加imageList和listview控件,並把ListView控件的LargeImageList設置為imageList1

  ListView控件顯示圖片的大小可以在imageList1控件中調整ImageSize屬性,如果圖片失真,可以設置imageList1控件的ColorDepth值為Depth32Bit.

    完成。

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM