Ich würde gerne erweitern, was Skeet bereits geschrieben hat.
Der Punkt ist, dass das MS WP7 Entwickler-Team "Richtlinien" veröffentlicht hat, wo sie stark davon abhalten, mehrere Layout-Steuerelemente zu setzen, die dasselbe Gesten akzeptieren und auf dasselbe reagieren. Zum Beispiel sollten Sie nicht versuchen, ein Pivot in ein Pano einzubetten, da der horizontale Swipe kollidiert und es schwer ist zu unterscheiden, welche von ihnen seine Aktionen ausführen soll. Der gleiche Fall ist mit dem Browser: Es reagiert auf alle Swipes und Schwenks .. also sollte nicht in fast jede Scroll-Kontrolle gestellt werden !!
Jetzt, nachdem ich das gesagt habe, möchte ich Ihnen sagen, dass es möglich ist, es zu überwinden - obwohl es nicht einfach wird, abhängig von Ihrem tatsächlichen Fall.
Die einfachste Möglichkeit zu tun, wenn Sie immer noch über die Gesten benachrichtigt werden möchten, ist die Verwendung von GestureService/GestureListener aus der Silverlight Toolkit-Bibliothek. Selbst wenn der WebBrowser die rohen Manipulationsereignisse löscht, kann der GestureListener Sie immer noch benachrichtigen - weil er scheinbar auf einer anderen Schicht lauscht, will ich jetzt nicht unbedingt reinkommen. Nur die Bibliothek holen, Add-Referenz es, so etwas wie:
GestureService.GetListener(targetcontrol).Flick(myBrowserFlickHandler);
und fertig - Sie die Benachrichtigung erhalten, wenn jemand Flicks auf die Kontrolle, mit völlig ohne Berücksichtigung der Manipulationsereignisse e.Handled werden = true oder nicht. Kleiner Disclaimer hier: Ich kann mich nicht erinnern, ob es unter 7.0 funktioniert, weil der WebBrowser dort etwas anders aufgebaut ist. Auf 7.1 und 7.5 sollte es funktionieren.
Wenn Sie dies jedoch auf einen WebBrowser anwenden - Sie werden die Benachrichtigung erhalten - aber der Webbrowser wird es auch bekommen. Das bedeutet, dass 2 Steuerelemente reagieren werden, und es wird visuell ziemlich abweisend, wenn Sie einige Storyboards aus dem Handler starten.
Auf 7.1 und fast aktuellen 7.5, ist es möglich, hart mit dem WebBrowser und zu spielen um zu kontrollieren, welches Manipulationsereignis es sehen wird.Indem Sie also die mani-Ereignisse für den WB filtern und GestureListener verwenden, um die Ereignisse selbst zu sehen, können Sie sowohl den WB blockieren als auch gleichzeitig mit Ihren eigenen Aktionen reagieren. Ich habe ausführlich darüber in einer Antwort auf ähnliches Problem geschrieben, siehe WP7 Pivot control and a WebBrowser control für Details. Es ist jedoch keine schnelle/einfache/lustige Sache zu tun.
EDIT: und MOST wichtiger ist, ist es nicht in der Zukunft arbeiten garantiert. In den 7.1- und 7.5 SDK/OS/API-Versionen sind innerhalb des WebBrowser-Steuerelements einige wichtige interne Änderungen sichtbar, und ich wäre nicht überrascht, wenn sich dies in den nächsten Releases dramatisch ändern würde. Spielen Sie nicht mit den Dingen, über die ich geschrieben habe, wenn Sie das Thema in den nächsten 1-2 Jahren nicht noch einmal aufgreifen wollen.
Gulp lesen, bestätigt. Ich habe eine Listbox hinter einem WebBrowser abgelegt und ausgefüllt. Keine Freude, Scroll-Ereignisse mit irgendwelchen offensichtlichen Mitteln in die Listbox zu bekommen. –