The question asked in the comment to Solution 1 has nothing to do with the original question:
Itamarep asked:
In my case, I want to display 2 web browsers that will display the same content and when browsing in one it will show the same results in the other. If I connect the source to a resource it will browse in both opening the same page twice, more than that, if an internal script on the page changes the display, the URL doesn't have to change meaning they will display different pages (under the same URL)
System.Windows.Controls.WebBrowser
is not
System.Windows.Controls.ContentControl
, and the media content it shows has nothing to do with the content of
ContentControl
:
http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser.aspx[
^].
Isn't the resolution of this problem, especially taken into account the last clause about the effect of the page's "internal script" trivial?
The browser URI is changed is 1) you navigate to some other URI using one of the
Navigate
methods; 2) when a use clicks in some HTML navigation control (such as anchor) inside the page currently rendered; in other way, you can navigate using some different URL from outside the browser's page and from the page. In first case, simply call the same
Navigate
method from both browser.
The second case is just a little bit different and asymmetric: handle the event
Navigating
in one browser instance, and, in its handler, call
Navigate
for another browser instance accordingly.
First and foremost, don't try to handle this event in both browsers in reciprocal manner, to avoid "infinite"
mutual recursion:
http://en.wikipedia.org/wiki/Mutual_recursion[
^]… :-)
—SA