2013-04-11 112 views
1

我有一個PopupWebBrowser裏面(見下面的代碼)。 WebBrowser有MaxWidth = "800"。我想在加載網站後自動調整WebBrowser的高度到其內容高度,所以它不需要垂直ScrollBar。WPF:如何在Popup中自動調整WebBrowser的大小?

我試過設置Height = "Auto"MaxHeight = "5000",但我沒有得到正確的結果。

你能幫我怎麼做嗎?非常感謝你!

<Popup Name="popup1" VerticalOffset="3"> 
     <Border BorderThickness="1"> 
      <DockPanel> 
       <ScrollViewer MaxHeight="700" VerticalScrollBarVisibility="Auto"> 
        <WebBrowser Name="wb1" MaxWidth="800"/> 
       </ScrollViewer> 
      </DockPanel> 
     </Border> 
    </Popup> 

回答

2

下面是解:

<Popup x:Name="Popup" Width="800"> 
    <Border BorderThickness="1"> 
     <WebBrowser 
      x:Name="WebBrowser" 
      LoadCompleted="WebBrowser_OnLoadCompleted" 
      ... /> 
    </Border> 
</Popup> 

處理程序:

private void WebBrowser_OnLoadCompleted(object sender, NavigationEventArgs e) { 
    this.Popup.Height = (int) (this.WebBrowser.Document as dynamic).body.scrollHeight + 20; 
}