http://helpcentral.componentone.com/nethelp/c1wpfchart/">C1Chart 提供了 我们通过按钮点击事件保存所有图表到图片。需要使用图表的Arrange 效果图: Demo 下载: VS2010 + Studio for WPF // create tabs with charts
for (int i = 0; i < cnt; i++)
{
charts<em class="bbcode-em"></em> = new C1Chart() {ChartType = ChartType.Line};
var values1 = new double[npts];
var values2 = new double[npts];
var values3 = new double[npts];
for (int j = 0; j < npts; j++)
{
values1[j] = rnd.Next(100);
values2[j] = rnd.Next(100);
values3[j] = rnd.Next(100);
}
charts<em class="bbcode-em"></em>.Data.Children.Add(new DataSeries() {ValuesSource = values1, Label = "series1" });
charts<em class="bbcode-em"></em>.Data.Children.Add(new DataSeries() { ValuesSource = values2, Label = "series2" });
charts<em class="bbcode-em"></em>.Data.Children.Add(new DataSeries() { ValuesSource = values3, Label = "series3" });
charts<em class="bbcode-em"></em>.Palette = ColorGeneration.Solstice;
charts<em class="bbcode-em"></em>.Children.Add(new C1ChartLegend() { Title = "Chart " + i });
tabs.Items.Add(new TabItem()
{
Header = "Tab " + i,
Content = new Grid() { Children = { charts<em class="bbcode-em"></em> } }
}
);
}
保存图表到图片
private void SaveBtn_Click(object sender, RoutedEventArgs e)
{
// use size of visible chart
var sz = new Size(charts[0].ActualWidth, charts[0].ActualHeight);
for (int i = 0; i < cnt; i++)
{
using (var file = File.Open("chart" + i + ".jpg", FileMode.Create))
{
// two arranges is neccesary to perform chart layout
charts[i].Arrange(new Rect(0, 0, sz.Width, sz.Height));
charts[i].UpdateLayout();
charts[i].SaveImage(file, ImageFormat.Jpeg);
}
}
}

ComponentOne Enterprise | 下载试用
ComponentOne 是一套专注于企业 .NET开发、支持 .NET Core 平台,并完美集成于 Visual Studio 的第三方控件集,包含 300 多种 .NET开发控件,提供表格数据管理、数据可视化、报表和文档、日程安排、输入和编辑、导航和布局、系统提升工具等七大功能,被誉为“.NET开发的‘瑞士军刀’”。
ComponentOne 为您提供专业的产品咨询服务,并由技术支持工程师为您1对1解答。>> 发帖提问
葡萄城热门产品