我们正在使用基础设施超网格向用户呈现数据。如果用户修改了列的宽度,我需要能够判断数据是否被截断,以便在将数据导出为 pdf 时正确调整输出。我们希望在导出为其他格式时截断数据,以匹配用户在列宽调整后看到的内容。
谢谢,
居里
我们正在使用基础设施超网格向用户呈现数据。如果用户修改了列的宽度,我需要能够判断数据是否被截断,以便在将数据导出为 pdf 时正确调整输出。我们希望在导出为其他格式时截断数据,以匹配用户在列宽调整后看到的内容。
谢谢,
居里
文本是否被截断是在绘制字符串时自动完成的,因此您需要获取可用空间和字符串,然后确定在绘制时它有多少适合空间。
在 UltraDocumentExporter 的 CellExporting 事件中,您可以通过以下方式获取文本和大小:
Size size = e.GridRow.GetCellSizeResolved(e.GridColumn);
string text = e.GridRow.GetCellText(e.GridColumn);
您还可以通过将 e.ExportValue 设置为要放入 PDF 文档中的字符串来更改要导出的值。
剩下要做的是确定适合矩形的字符数量,以下内容应该可以帮助您: How to determine the maximum number of characters given a fixed width font and a maximum width in pixel