从HTTP处理程序内的WPF用户控件创建动态图像

时间:2010-12-01 12:58:15

标签: asp.net silverlight xaml httphandler pivotviewer

我在我的一个Silverlight项目中使用Microsoft的PivotViewer控件。我正在创建一个JIT集合,并希望根据WPF UserControl的渲染结果动态生成图像。为了生成图像,我正在使用HTTP处理程序动态地提供图像。

任何人都可以指出我如何最好地解决这个问题。这一切都是技术的混搭,有点难以知道最好的开始。

提前致谢。

编辑:我找到了一个在ASP.Net MVC中完成此操作的人here -

1 个答案:

答案 0 :(得分:2)

如果你想在HTTP流上传输一个WPF视觉,那么伪代码将是这样的:

        RenderTargetBitmap bmp = new RenderTargetBitmap(width, height, 96, 96, PixelFormats.Pbgra32);
        bmp.Render([your WPF visual or control instance]);

        // choose the format if you want something other than png
        PngBitmapEncoder png = new PngBitmapEncoder();
        png.Frames.Add(BitmapFrame.Create(bmp));

        // stream this on the web
        png.Save([the web stream, like Response.OutputStream]);