Интересно, является ли это правильным способом печати потокового документа :( но это очень странное явление.
Мой код выглядит так:
string flowDocString =
" <FlowDocument xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'>" +
" <Section>" +
" <Paragraph>" +
" <CheckBox IsChecked='True'>Test</CheckBox>" +
" </Paragraph>" +
" </Section>" +
" </FlowDocument>";
FlowDocument flowDoc = (FlowDocument)XamlReader.Load(new MemoryStream(new UTF8Encoding().GetBytes(flowDocString)));
PrintDialog printDlg = new PrintDialog();
IDocumentPaginatorSource idpSource = flowDoc;
printDlg.PrintDocument(idpSource.DocumentPaginator, "Hello WPF Printing.");
Когда я использую этот код,состояние флажка по-прежнему не проверено, но когда я изменяю flowDocString следующим образом:
string flowDocString =
" <FlowDocument xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'>" +
" <Section>" +
" <Paragraph>" +
" <CheckBox IsChecked='True' IsEnabled='False'>Test</CheckBox>" +
" </Paragraph>" +
" </Section>" +
" </FlowDocument>";
Если вы измените вышеупомянутые результаты, они будут отображаться как задумано. Как это могло произойти? Скажите, почему.