繁体   English   中英

OxyPlot WPF在后台生成图像

[英]OxyPlot WPF generate image in background

我有以下问题:

我在Prism的一个观点中有一个情节。 我的目标是从我的应用程序生成报告,其中包括生成的OxyPlot图表。 我使用以下行将绘图保存到图像:

plot.SaveBitmap(fileName, 960, 540, OxyColor.FromRgb(255, 255, 255));

当我尝试保存位图而不事先在用户界面中看到图表时,会出现问题。 在这种情况下,我只得到空白图,白色位图正确的大小,但没有内容。 没有轴,没有标题(位图只是空白)。 当我使用函数生成XAML而不是Bitmap时,结果是相同的:根本没有内容。

我还注意到,当绘图保存时,绘图的宽度和高度都设置为0。 在保存功能之前设置此值不会更改结果文件。

我在保存图片之前尝试过以下代码:

plot.InvalidatePlot();

甚至:

plot.InvalidatePlot();

Action emptyAction = delegate { };
plot.Dispatcher.Invoke(DispatcherPriority.Render, emptyAction);

plot.InvalidatePlot();

当我浏览用户界面时,我可以看到该图:保存功能返回到正确的行为。 没有例外,情节有我的数据在保存之前绘制。

请帮忙...

我使用oxyplot时遇到了同样的问题。 我试图将图像导出到一个文件,但它只在我首先在屏幕上显示时才起作用。 要使其工作,您必须以编程方式定义所有模型,并将模型绑定到XAML。 这样您就不必通过视图来正确导出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM