异常消息是"值不在预期范围内".这是代码:
private void PrintButton_Click(object sender, RoutedEventArgs e)
{
PrintDocument pd = new PrintDocument();
pd.PrintPage += (s, pa) =>
{
Viewbox vb = new Viewbox();
vb.Child = MainGrid; // MainGrid is a System.Windows.Controls.Grid.
pa.PageVisual = vb;
};
pd.Print("Test Page");
}
Run Code Online (Sandbox Code Playgroud)
我在这里做错了吗?
当您尝试将具有父项的UIElement设置为容器的子项时,当您尝试将具有相同"name属性"的两个UIElement实例添加到a时,会出现"值不在预期范围内"错误父容器等.在您的示例中,MainGrid必须是另一个容器的子级,因此无法添加为Viewbox的子级.从它的父级删除MainGrid,然后将其添加到Viewbox.完成后,从Viewbox中删除MainGrid并将其添加回原始父级.