2013-01-17 70 views
12

我們已經有了一個StackPanelMicrosoft.Phone.Controls.WebBrowser嵌入式控制,在Windows Phone 8中的PivotItem內以簡單的形式,它基本上是:嵌入式WebBrowser控件攔截水平滾動事件

<Grid> 
    <controls:Pivot Width="425" Margin="50,0,0,0"> 
    <controls:PivotItem Margin="0,0,0,0" Width="400"> 
     <StackPanel> 
     <!-- Other stuff --> 
     <phone:WebBrowser Margin="0,0,0,0" Padding="0,0,0,0" Width="400" Height="600" /> 
     </StackPanel> 
    </controls:PivotItem> 
    </controls:Pivot> 
</Grid> 

的問題是,不像其他控件,WebBrowser似乎攔截所有滾動事件,即使不需要內部滾動。這基本上意味着,一旦WebBrowser控件在屏幕上,滾動到下一個PivotItem的唯一方法是點擊頂部的標題,這是一個拖動。

我已經嘗試了一些技巧包括

  • 強制內部ScrollViewerHorizontalScrollBarVisibilityDisabled
  • 手動捕獲ManipulationDelta和/或ManipulationCompleted事件和傳播起來自己 - 他們不解僱你將期望他們
  • 嘗試WebBrowser和父母的寬度,使其意識到不需要滾動的每一個可能的排列組合。

這似乎是不尋常的事情發生在這裏。關於如何改變這種行爲的任何建議?

+1

您可以添加一種List(LongListSelector例如)而不是WebBrowser並獲得相同的問題。我想這兩個卷軸出現錯誤的情況出現在另一個卷軸內。另外,如果您將webbrowser直接放置到pivotitem的根目錄(不帶stackpanel),它看起來很好。 –

+0

@Adrian Petrescu你解決了你提到的問題嗎?如果是這樣,你是如何解決的? – 2013-12-02 12:30:23

回答