텍스트 뷰어에서 텍스트 검색 결과를 반환하는 treeView가 있습니다. MVVM을 사용하여 WPF에서 TreeView 인쇄
<TreeView ItemsSource="{Binding FirstGeneration}"
...>
<TreeView.ItemContainerStyle.../>
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<StackPanel Orientation="Horizontal" FlowDirection="LeftToRight">
<TextBlock Text="{Binding PreExp}" />
<TextBlock Text="{Binding Exp}"
FontStyle="{Binding FontStyle}"
Foreground="{Binding Color}" />
<TextBlock Text="{Binding PostExp}" />
</StackPanel>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
(우리는 목록으로 C++ 프로젝트의 결과를 얻을 수 있기 때문에), 우리는 논리적 트리를 만들 나무와 같은 결과를 얻을 빨간색 특급을 표시합니다. 나는 그들을 3 개의 textBoxes로 분리했다.
트 리뷰는 diffrent UserControl을에 - 그리고 나는 SearchView (UC)에 넣어.
지금 나는이 나무에 모든 결과를 인쇄하고 싶습니다. 나는 빨간색으로 검색 결과에 중점을두고 문서를 인쇄하는 것을 선호합니다.그것은 this 것 같습니다.
나는 을 시도했다. PrintDialog.PrintVisual. 문제는 ViewModel에서 뷰 등을 알 수 없기 때문에 트리 또는 검색 식에 연결할 수 없다는 것입니다.
코드에서이 코드를 사용해 보았지만 실제로 볼 수있는 것이 아니라 전체 트리 결과. 도움
FlowDocument doc = new FlowDocument();
foreach (SearchObjectViewModel item in tv.Items)
doc.Blocks.Add(new Paragraph(new Run(item.PreExp+item.Exp+item.PostExp)));
pd.PrintDocument(((IDocumentPaginatorSource)doc).DocumentPaginator,exp);
10 배 4 :
PrintDialog dialog = new PrintDialog();
if (dialog.ShowDialog() != true)
return;
dialog.PrintVisual(SearchResultTree, "The Search Result Tree");
또한 나는
FlowDocument과 옵션을 시도!