希望那里的某人可能遇到与此相同的问题,并找到了解决方案。
我正在尝试将表中的某些行设置为要分组,以便如果某行落入下一页,则其他行也将转到该下一页。
我正在使用PdfSharp和Migradoc将行KeepWith属性设置为行的索引 我想继续关注。
IE:
var row = myTable.AddRow();
var rowIndex = row.Index;
foreach (var term in terms)
{
row = myTable.AddRow();
if (term.name == "group")
{
row.KeepWith = rowIndex;
}
}
当我尝试加载pdf时,我得到一个'对象引用未设置为对象的实例' 错误抛出,无法弄清楚为什么。任何帮助都会很棒。
答案 0 :(得分:11)
将KeepWith设置为要与当前行保持的以下行数。要将三行保持在一起,正确的值为2(在组的第一行设置)。
答案 1 :(得分:0)
我犯了一个错误,将KeepWith放在行的末尾以保持在一起。正如Vive ladéraison所说,将KeepWith放在各行的第一行以保持在一起。
此外,为KeepWith值提供的int不包括其设置所在的行。因此,为了将行rowA,rowB和rowC保持在一起,可以设置:
rowA.KeepWith = 2;
如果您为表的最后一行设置了一个KeepWith,并且不小心将值设置为+1(包括您在其上设置的行),则会收到相同的“对象未设置...”错误,因为您将KeepWith扩展的长度超过了表行。
一定喜欢那些“一次性”错误。