【问题标题】:How to Implement Icon Overlay如何实现图标叠加
【发布时间】:2012-02-13 10:05:51
【问题描述】:

我正在开发一个 Windows 项目,但我确实被图标覆盖的概念所困扰。我搜索了很多文章,但最后大多数成员都建议到下面的链接:

但是我不明白如何从 C# 中使用它。你能帮帮我吗?

谢谢

【问题讨论】:

  • 您是在尝试在 shell(即 Windows 资源管理器)中添加叠加层,还是尝试在 WinForms 应用程序内的您自己的 ListView 中使用图标叠加层? (或者您使用的是 WPF、Silverlight 还是 LightSwitch?)

标签: c#


【解决方案1】:

这是 C# 中的一个示例,尽管我很抱歉它更多的是代码转储,而不是如何执行此操作的说明。

http://alski.net/post/2012/01/11/WPF-Icon-Overlays.aspx

重要的一点是它需要一个视觉并将其转换为位图。 IconOverlay 与生成的位图绑定。

 public static BitmapSource GenerateBitmapSource(Visual visual, double renderWidth, double renderHeight)
    {
        var bmp = new RenderTargetBitmap((int)renderWidth, (int)renderHeight, 96, 96, PixelFormats.Pbgra32);
        var dv = new DrawingVisual();
        using (DrawingContext dc = dv.RenderOpen())
        {
            dc.DrawRectangle(new VisualBrush(visual), null, new Rect(0, 0, renderWidth, renderHeight));
        }
        bmp.Render(dv);
        return bmp;
    }

【讨论】:

    【解决方案2】:

    因为我已经wrote here,您可以简单地查看into the sourcesTortoiseSVN 来了解如何执行此操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-29
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      • 2011-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多