0

我正在开发 wpf 应用程序。我在 xaml 页面中只有一个按钮。单击它,我编写了以下代码

private void button1_Click(object sender, RoutedEventArgs e)
        {

            PrintDialog printDialog = new PrintDialog();
            if (printDialog.ShowDialog() == true)
            {
                //PrintUsingDocumentCondensed("Hi", "Hello");
                printDialog.PrintVisual(button1, "Print123");
                //printDialog.PrintDocument("a",
            }
        }

我已将打印机连接到我的系统。当我单击应用程序中的打印按钮时,打印机开始打印。打印机打印一些文本,例如BeginDefaultsEndDefaultsBeginResourceEndResource。与许多其他文本类似。它还会打印一些文本,例如“此作业需要的内存比这台打印机可用的内存更多”、“对于输出格式,请选择优化便携性”、“减少文档中的字体数量”。等我认为我的打印机出了问题。或者我的代码或应用程序有什么问题吗?我应该如何使用上述代码在打印页面上打印实际按钮?您能为我提供上述链接的任何解决方案吗?

4

2 回答 2

0

我不确定为什么直接在PrintVisual方法中放置对象不起作用,但我觉得这不是你最终会这样做的方式,所以我建议走不同的路线。我不会传入控件,而是生成一个位图,然后将位图传递给PrintVisual方法。这个问题处理如何做到这一点:

从文件加载图像并使用 WPF 打印它......如何?

然后这里有一个问题,展示了如何从控件创建位图。

从控制视图中获取位图图像

于 2012-11-20T12:49:47.150 回答
0

我检查了在记事本上打印文本。它给出了同样的错误。然后我分析打印机没有正确添加。这是我的错误。现在正确添加了打印机。现在一切正常

于 2012-11-21T09:20:30.110 回答