Jak komunikować się między WPF a JavaScriptem w instancji WebBrowser?

Mam aplikację C # / WPF z wbudowaną przeglądarką (WebBrowser) z JavaScriptem. Jak mogą komunikować się ze sobą w obu kierunkach? Czy można użyć adresu URL?

JS-> WPF: Słuchaj zmian. WPF-> JS: zmień adres URL najavascript:alert('hello');

Czy jest lepszy sposób?