我有一个WPF库项目,当我在visual studio中运行它运行完美,打印功能正常工作,但是当我从另一个应用程序打开项目并打印它时,复选框始终为空。
我尝试了它没有绑定和绑定,但复选框总是空的。
这怎么可能?
Checkbox是这样的:
<CheckBoc IsChecked="true"/>
当我从visual studio打印它时,它被检查但是当我用另一个应用程序打开DLL并将其打印到xps或打印机时,它是未选中的。
复选框位于视图中,当我单击按钮时,视图将添加到固定页面,并使用printdialog将其发送到打印机。代码没什么特别的。
创建固定页面的代码
// select printer and get printer settings
PrintDialog pd = new PrintDialog();
if (pd.ShowDialog(appView) != true) return;
// create a document
FixedDocument document = new FixedDocument();
document.DocumentPaginator.PageSize = new Size(pd.PrintableAreaWidth, pd.PrintableAreaHeight);
// create pages
FixedPage fixedPage = new FixedPage();
fixedPage.Width = document.DocumentPaginator.PageSize.Width;
fixedPage.Height = document.DocumentPaginator.PageSize.Height;
IPageViewModel pageModel = _applicationViewModel.CurrentPageViewModel;
UserControl pageView = this.GetView(pageModel);
// Add Viewmodel to Page 1
pageView.DataContext = pageModel;
pageView.Width = fixedPage.Width - 10;
pageView.Height = fixedPage.Height - 10;
pageView.Margin = new Thickness(60, 0, 10, 10);
fixedPage.Children.Add(pageView);
// add the pages to the document
PageContent overviewContent = new PageContent();
((IAddChild)overviewContent).AddChild(fixedPage);
document.Pages.Add(overviewContent);
/// and print
pd.PrintDocument(document.DocumentPaginator, "Document");
谢谢, Xander的
答案 0 :(得分:0)
在这种情况下,它是一种.NET错误行为。除非您将复选框设为已禁用,否则复选框状态不会反映在打印输出上。 RadioButtons也是如此。由于以下问题,我自己复制了它: