【问题标题】:Display A Bitmap WPF From Scratch从头开始显示位图 WPF
【发布时间】:2013-01-19 19:57:12
【问题描述】:

我查看了十几个示例(并尝试了多个示例),但我找不到在 WPF 中轻松设置可在 Windows 商店中使用的 RenderTargetBitmap 或 WriteableBitmap 的方法。

最终我想直接操作一个数组,我可以以 30 Hz 左右的频率将它放到屏幕上。

这个例子可能让我最接近:

DrawingVisual MyDrawingVisual = new DrawingVisual();
//Open its drawing context:
DrawingContext MyDC = MyDrawingVisual.RenderOpen();

// At this point you can draw
Pen p = new Pen();
p.Thickness = 5;
p.Brush = new SolidColorBrush(Colors.Green);
MyDC.DrawLine(p, new Point(1.0, 1.0), new Point(10.0, 10.0));

RenderTargetBitmap MyRenderTargetBitmap = new RenderTargetBitmap(100, 100, 96, 96, PixelFormats.Default);
MyRenderTargetBitmap.Render(MyDrawingVisual);

RenderTargetBitmap rtbm = new RenderTargetBitmap(200, 200, 96, 96, PixelFormats.Pbgra32);
rtbm.Render(MyCanvas);

上面的例子对我来说有两个问题:它似乎没有在屏幕上绘制任何东西,而且我认为 MyDC 使用 DirectX(我猜它不适用于 Windows App Store)。

编辑:

这个 MS 示例正是我想要的!

http://code.msdn.microsoft.com/windowsapps/0f5d56ae-5e57-48e1-9cd9-993115b027b9/sourcecode?fileId=44756&pathId=962809525

【问题讨论】:

  • 当这真的是关于 Windows 应用商店应用程序时,它不可能是 WPF。您想绘制背景位图并在 Windows 应用商店应用程序中显示它吗?
  • @Clemens:据我所知,您无法在 Windows 商店应用程序中使用 GDI、DirectX 等进行绘图,因此您只能使用 WPF
  • 这不是 WPF。构建 Windows Store App 时,平台为Windows Runtime,简称 WinRT。它还具有 XAML,并且与 Silverlight 的比较多于 WPF,但它是另一回事。另见this answer

标签: c# wpf visual-studio-2012


【解决方案1】:

克莱门斯就在上面。在我看来,WPF 和 XAML 基本上是一回事,但实际上并非如此。

我上面的方法或多或少是在黑暗中刺探。我将尝试使用本教程作为我的起点。

http://msdn.microsoft.com/en-us/library/windows/apps/hh986965.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-25
    • 2012-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多