2009-10-30 167 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>