【问题标题】:Custom filtering OpenFileDialog自定义过滤 OpenFileDialog
【发布时间】:2012-07-03 23:01:43
【问题描述】:

我正在尝试制作一个允许用户查看 PictureBox 中的图标的程序。我希望用户只能打开 24x24 像素的图像。

我想在 OpenFileDialog 中放置一个过滤器,以仅显示 24x24 的图像。有没有办法做到这一点?我听说可以通过自定义 OpenFileDialog 和使用 P/Invoke 来实现。

【问题讨论】:

  • 根据我们在聊天中的讨论,我已经编辑了您的问题。
  • I would like to put a filter in an OpenFileDialog to only show images that are 24x24. Is there any way to do this? 不,没有。
  • 好的,谢谢!我很高兴我现在知道了

标签: c# .net winforms openfiledialog


【解决方案1】:

您可以查看图片的WidthHeight

// 'image' is the image you want to check
if(image.Width > 24 || image.Height > 24)
    MessageBox.Show("Please select a smaller image!");
else
    // This code will always run if the image is smaller than 24x24

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    如果您通过将其存储为对象(我假设您是)来读取它,您只需要读取 imageObject.Width “使用 System.Drawing;”或“使用 System.Drawing.Image;”

    示例herehere

    【讨论】:

    • 如果你想知道为什么你投了反对票,我不能代表其他任何人(包括投票的人),但老实说,我自己甚至都不知道答案。我在谷歌上搜索“如何找到图像的宽度”所花的时间比你写这个问题所花的时间要少......这个问题也模仿了已经在 stackoverflow 上发布的另一个问题。 (供以后参考)只是人们期望,如果您希望他们努力彻底地回答您的问题,那么您将相应地努力先自己回答。 (大多数人都希望你向他们展示你所做的)
    【解决方案3】:

    你不能用 OpenFileDialog 做到这一点。您需要编写自己的对话框来询问每个文件夹中的文件并确定它们是否符合您的条件,然后只显示这些文件。

    【讨论】:

      猜你喜欢
      • 2013-11-20
      • 2011-08-30
      • 1970-01-01
      • 2013-10-03
      • 1970-01-01
      • 1970-01-01
      • 2020-03-18
      • 1970-01-01
      相关资源
      最近更新 更多