c# - 打印和 Blazor
问题描述
我有一个Blazor
连接到现有后端的应用程序。Blazor 应用需要从List<T>
. 这样做的正确方法是什么?
但是,在 WPF 世界中,我会使用 a DocumentPaginator
,因为DocumentPaginator
GetPage
方法返回 a DocumentPage
,它是一个 WPFVisual
元素,这已经过时了。
我有一些运气创造了这样的FlowDocument
东西:
var doc = new FlowDocument();
var table1 = new Table();
doc.Blocks.Add(table1);
for (int x = 0; x < numberOfFields; x++)
{
table1.Columns.Add(new TableColumn());
}
table1.RowGroups.Add(new TableRowGroup());
int i = 0;
foreach (var x in MyList)
{
table1.RowGroups[0].Rows.Add(new TableRow());
TableRow currentRow = table1.RowGroups[0].Rows[i];
AddFields(currentRow, i, x);
i++;
}
但是,这会打印出一个文档,我需要页眉和页脚。放置页眉、页脚和分页符可以使用Paragraph
并且Section
非常简单。问题是计算何时应用分页符。我所看到的在 FlowDocument 中找出某些东西的高度的所有东西都使用 aFrameworkElement
来找到它。
对网络非常陌生,所以如果有一些简单的解决方案,我很抱歉问。
解决方案
与 TossNet 结合生成可用于Append.Blazor.Printing
显示打印对话框的 .pdf 文件。
推荐阅读
- angular - 类型'可观察的
' 不可分配给类型 'Observable ' - python - 从元组列表中返回有组织的列表
- vba - 将分组图像复制为图片并通过vba将其裁剪为ppt
- python - 熊猫在列名中添加可选后缀作为函数中的参数
- javascript - 无法抓取 Javascript 网站 - API 调用/XHR 请求
- vue.js - 在 Vue js 中强制方法调用后如何从父级获取更新的道具?
- python - 为什么导入在这个 ROS python 脚本中有效
- set - 如何从 cplex 的集合中声明一个子集?
- mongodb - $regex 和 $text 一起在 $or 中
- css - 有 a 类而不是 b 类并且是第 n 个孩子