【问题标题】:Create dynamic images from WPF User Control inside an HTTP Handler从 HTTP 处理程序内的 WPF 用户控件创建动态图像
【发布时间】:2010-12-01 12:58:14
【问题描述】:

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

任何人都可以为我指出正确的方向,让我最好地解决这个问题。这都是技术的混搭,有点难以知道从哪里开始最好。

提前致谢。

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

【问题讨论】:

    标签: asp.net silverlight xaml httphandler pivotviewer


    【解决方案1】:

    如果您想在 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]);
    

    【讨论】:

    • 完成了这个,但我得到的只是一个黑色矩形,..不管我给它什么 xaml。有什么想法吗?
    • 啊,..找到了。您必须调用 Control.Arrange() 才能正确显示。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 2016-06-10
    • 2010-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多