2009-10-30 168 views
6

目前我在显示XPS文件的WPF窗口中有一个DocumentViewer。我创建了自己的“下一页”和“上一页”按钮,并将DocumentViewer.Background属性设置为完全透明。如何隐藏WPF DocumentViewer的菜单栏?

DocumentViewer自身控件的剩余部分是顶部的菜单栏(显示缩放设置,打印等)和底部的“查找”栏。我很想删除(或隐藏)这两个栏,但我似乎无法弄清楚!另外,当文档被加载时,它默认为一个缩放级别,它不会在屏幕上显示整个页面,我需要将它改变为一次显示1页(全部)。我确信有这样做的方法,但是,我还没有找到如何。

+1

你能告诉你是怎么添加自定义下一页和上一页按钮? – Gokul 2010-08-26 06:37:11

回答

8

要删除工具栏,您必须更改DocumentViewer的控件模板。

从此链接中的模板开始http://msdn.microsoft.com/en-us/library/aa970452.aspx 并删除ToolBar元素(也可能是带有x:Name =“PART_FindToolBarHost”底部的ContentControl)。

关于设置缩放,我没有一个优雅的XAML解决方案,但是您可以在加载文档后调用DocumentViewer的FitToWidth或FitToHeight方法(如果必须,每个页面都已经拥有自己的next/prev可以调用这些方法的网页代码)

+0

太棒了,谢谢! – Siyfion 2009-11-02 18:39:41

18

下面是一个简单的“变通”的方式,只是隐藏不需要重写整个控制模板,这些元素:

<DocumentViewer> 
    <DocumentViewer.Resources> 
     <!-- Hides the search box--> 
     <Style TargetType="ContentControl"> 
      <Setter Property="Visibility" Value="Collapsed" /> 
     </Style> 

     <!-- Hides the toolbar -->   
     <Style TargetType="ToolBar"> 
      <Setter Property="Visibility" Value="Collapsed" /> 
     </Style> 
    </DocumentViewer.Resources> 
</DocumentViewer>