使用 Uwp 社区工具包打印 master/detail 的详细信息页面

print master/detail's detail page using Uwp Community Toolkit

我使用 Master/Details view from the UWP Community Toolkit 并将其包装在我的 "custom master/details view" 中。此自定义视图应该能够打印当前 Detail,因此 DetailsTemplate 属性 上 MasterDetailsView。问题是我无法像这样将 DataTemplate 传递给 UWP Toolkit Print Helper:

printHelper.AddFrameworkElementToPrint(NameOfMasterDetailsView.DetailsTemplate);

我试图制作一个具有 2 个 DependencyProperties 的通用页面:1) 数据模型,2) DataTemplate。这样我想重用我用于 DetailsTemplate 的 DataTemplate。我刚刚将它们传递给了 ContentPresenter:

<ContentPresenter ContentTemplate="{Binding MyDataTemplateProp}" Content="{Binding MyModelProp}" (我也尝试使用 DataContext 而不是 Content)。

结果保持不变:打印空白页。

如何打印填充有数据模型的 DataTemplate? 更具体:如何使用 UWP Community Toolkit 打印详细信息页面?

The problem is that I cannot pass a DataTemplate to the UWP Toolkit Print Helper

如您的代码行所示,您需要添加一个 FrameworkElement to print. DataTempalte 继承自 FrameworkTemplate 它不是 FrameworkElement,它只是定义了一个不指示面积

how to print a detail page with the UWP Community Toolkit?

您需要找到负责详细信息页面部分的元素。如果您检查 MasterDetailsView default template you will find that the detail page is inside a Grid named DetailsPanel. Try to find the DetailsPanel element and pass it to print. For how to find this element you may need to use ViualTreeHelper.