2017-07-30 24 views
0

我想添加一个新的图像列表,其中描述了每个图像下面的每个图像的文本。我已将列表视图设置为大图标,并尝试了许多其他尝试将预览图像恢复为第一种形式。 我已经能够 1.将非常小的图像放入列表视图 2.只将文本放入列表视图 3.再次获取非常小的图像,首先是文本,然后是图像,而不是在一起。从调用外部类填充winform ListView,不添加图像和文本

我已经尝试了所有的重载方法,我仍然在为什么我甚至无法获取作为图像占位符Properties.resources.image的损失。除非是一个微小的图像。是的,我已经设置了listview大图标模式并尝试了imageSize属性,没有任何工作。还有一些尝试通常使用类似于下面的解释的技术,无法在frstForm的listview中显示任何内容。 任何提示将不胜感激。

public ImageList imageList_c = new ImageList(); 

    private Family_Loader_ExtEventDialog _frstForm; 


       foreach (KeyValuePair<string, Bitmap> kvp in element_Dict(_doc_new, BuiltInCategory.OST_Walls)) 
       { 
        //imageList_c.ImageSize = new Size(120, 120); 
        //imageList_c.Images.Add(kvp.Key, Properties.Resources.folder); 
        _frstForm.listView_Family.Items.Add(kvp.Key); 
       } 

//_frstForm.listView_Family.LargeImageList = imageList_c;

+0

图标大小是系统设置。考虑到你只是选择了错误的视图,你可以在选择View = Tile时控制大小。 TileSize属性然后设置大小。神秘问题标题btw。 –

+0

我找到了soln,thanx给了我一些希望Passant!将图像添加到图像列表字典后的下面的代码有所帮助。 –

回答

-1
  imageList_c.Images.Add(kvp.Key, kvp.Value); 

      _frstForm.listView_Family.View = System.Windows.Forms.View.LargeIcon; 
      _frstForm.listView_Family.LargeImageList = imageList_c;  
      for (int i = 0; i < imageList_c.Images.Count; i++) 
      { 
       ListViewItem item = new ListViewItem(); 
       item.ImageIndex = i; 
       item.Text = imageList_c.Images.Keys[i]; 
       _frstForm.listView_Family.Items.Add(item); 
      }