首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在picturebox中循环图片并将其名称添加到combobox?

问在picturebox中循环图片并将其名称添加到combobox?
EN

Stack Overflow用户
提问于 2019-06-15 18:31:38
回答 2查看 125关注 0票数 0

我在picturebox中有大约20张图片,我想遍历所有的图片,并将其名称添加到combobox中,然后使用combobox更改picturebox中的图片。我不知道如何遍历picturebox图片。

对于example..these名称

​

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-16 00:18:40

要使用资源中的图像填充ComboBox:

代码语言:javascript
复制
   For Each dicEntry As DictionaryEntry In resourceSet.OfType(Of Object)()
        If TypeOf (dicEntry.Value) Is Drawing.Image Then
            ComboBox1.Items.Add(dicEntry.Key.ToString())              
        End If
   Next

要选择图像并将其设置为PictureBox,请执行以下操作:

代码语言:javascript
复制
 Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
     Dim comboBox As ComboBox = CType(sender, ComboBox)
     Dim sSelectedItem = CType(comboBox.SelectedItem, String)
     Dim img As Image = CType(My.Resources.ResourceManager.GetObject(sSelectedItem), Image)
     PictureBox1.BackgroundImage = img
 End Sub
票数 1
EN

Stack Overflow用户

发布于 2019-06-15 20:18:06

这里有几个问题需要解决。最重要的是,Image对象没有名称,所以没有要列出的内容。也许您指的是从中创建Image对象的文件的名称,但这是不同的。除非将ImageLocation属性设置为加载文件,否则无法从PictureBox控件中获取这些文件。假设您已经这样做了,您可以从PictureBoxes中获得每个文件的名称,如下所示:

代码语言:javascript
复制
Dim fileNames = Controls.OfType(Of PictureBox)().
                         Select(Function(pb) IO.Path.GetFileName(pb.ImageLocation))

尽管如此,这仍然没有什么意义。在加载Images之前获取文件的名称似乎更有意义。但是,您还没有真正解释足够的内容来提供一个有信心的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56609509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档