【问题标题】:Showing thumbnail of selected images in a desktop application using C Sharp使用 C Sharp 在桌面应用程序中显示所选图像的缩略图
【发布时间】:2011-04-06 19:42:01
【问题描述】:

我有一个 C sharp 桌面应用程序,我必须在缩略图视图中显示选定的图像(该视图类似于附加图像)。可以使用图像顶部显示的 x(十字)按钮取消选择所选图像。有人可以建议我如何实现这一点。我已经在 ASP .net 中看到了这一点。但我必须在 C# 中完成此操作。任何线索都将受到极大的欢迎。

问候,

【问题讨论】:

  • 您的哪一部分有问题?
  • 一次性显示选定的图像。

标签: c# image thumbnails


【解决方案1】:

您可以从 .Net (Image.GetThumbnailImage) 中的 Image 类生成缩略图。至于您在此处显示的布局,您可以使用 FlowLayoutPanel 或其他类型的面板(或滚动您自己的面板),它们会动态地将图像添加到您的表单中。从那里您可以在图像周围突出显示并在 OnPaint 中添加您的 X 控制按钮,只需跟踪哪些被选中,哪些不是通过某个容器类(将图像添加到 HashSet 之类的东西(.Net 3.5 或更高版本)这样您就可以在集合中快速添加/删除它们,并在 OnPaint 中对其进行迭代。

【讨论】:

  • 如果您将我的想法与 VinayC 的想法结合起来,您将获得一个非常可行的解决方案,创建一个包含图像名称和图像面板的 UserControl。从您选择的文件中生成缩略图并使用您的新控件来显示它们。您可以为 X 图标是否应显示为控件的一部分添加属性,然后允许控件的 OnPaint 管理该部分。然后,您可以在向面板添加更多图像显示控件时使用 FlowLayoutPanel 自动排列图像。如果我有足够的声誉,我会投票支持 VinayC 的评论,这是个好主意。
【解决方案2】:

我的建议是创建一个自定义控件(或用户控件)来封装图像缩略图及其名称。聚焦/悬停时,它将突出显示并显示交叉。交叉可以像覆盖在缩略图上的另一个图像一样简单(在鼠标悬停事件中显示/隐藏)。然后,您只需要以您想要的任何方式创建和布置多个控件实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-05
    • 2010-11-26
    • 1970-01-01
    • 2010-09-06
    • 2014-03-23
    • 2018-01-12
    • 2021-10-02
    • 2023-03-07
    相关资源
    最近更新 更多