title: Call NavigationService from Silverlight UserControl that contains Navigation Frame
body: <p>I have a UserControl that contains a Frame with a UriMapper. This is also my RootVisual, so it is what is loaded when the application is loaded. This is my (simplified) XAML:</p>
  
  <pre><code>&lt;UserControl&gt;
      &lt;navigation:Frame x:Name="ContentFrame" Source="/Page1"&gt;
          &lt;navigation:Frame.UriMapper&gt;
              &lt;uriMapper:UriMapper&gt;
                  &lt;uriMapper:UriMapping Uri="" MappedUri="/Views/Home.xaml"/&gt;
                  &lt;uriMapper:UriMapping Uri="/{pageName}" MappedUri="/Views/{pageName}.xaml"/&gt;
              &lt;/uriMapper:UriMapper&gt;
          &lt;/navigation:Frame.UriMapper&gt;
      &lt;/navigation:Frame&gt;
  
  &lt;HyperlinkButton x:Name="Page1Link" NavigateUri="/Page1" TargetName="ContentFrame" Content="Page1"/&gt;
  &lt;HyperlinkButton x:Name="Page2Link" NavigateUri="/Page2" TargetName="ContentFrame" Content="Page2"/&gt;
  &lt;/UserControl&gt;
  </code></pre>
  
  <p>This all works great, but now I want to add a back-button. When the user clicks the button, I want to call</p>
  
  <pre><code>NavigationService.GoBack();
  </code></pre>
  
  <p>I can call the NavigationService from the pages (Page1 and Page2), but how can I call the NavigationService from this 'parent' UserControl? Is it possible? In this UserControl, the NavigationService is always null.</p>
  
  <p>I would either want to access the NavigationService from the pages shown in the Frame, or pass the button click event to these pages.</p>
  
  <p>I don't want to have to put a button in each Page and handle the navigation there.</p>