none
页面导航的问题 RRS feed

  • 问题

  • xaml: 
     
    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation" 
    xmlns:uriMapper="clr-namespace:System.Windows.Navigation;assembly=System.Windows.Controls.Navigation" 
     
    <UserControl.Resources> 
     
      <uriMapper:UriMapper x:Key="uriMapper"> 
          <uriMapper:UriMapping MappedUri="/View/Home.xaml" Uri="" /> 
          <uriMapper:UriMapping MappedUri="/View/{pageName}.xaml" Uri="/{pageName}" /> 
          <uriMapper:UriMapping MappedUri="/View/{pageName}.xaml" Uri="{}{pageName}" /> 
      </uriMapper:UriMapper> 
    </UserControl.Resources> 
     
    <navigation:Frame x:Name="ContentFrame" Navigated="ContentFrame_Navigated" NavigationFailed="ContentFrame_NavigationFailed" Height="466" VerticalAlignment="Stretch" UriMapper="{StaticResource uriMapper}">
    

     

    cs:

    private void UserControl_Loaded(object sender, RoutedEventArgs e)
            {
                   ContentFrame.Source = new Uri("/View/xxx.xaml, UriKind.Relative);

            }

    我想在这个usercontrol载入的时候,将其中的frame导航到一个page,可是当我设置了它的UriMapper的时候,再在后台cs代码中写导航就失去了效果

    2011年7月14日 3:13

答案

  • 您好,
    您的程式碼中的Uri應該寫錯了,例如想要導航到View資料夾底下的Page1.xaml頁面的話,您應該這樣寫
     
    private void UserControl_Loaded(object sender, RoutedEventArgs e)
    {
       ContentFrame.Source = new Uri("/Page1", UriKind.Relative);
    }
    

    這樣對應UriMapper時候就會套用到<uriMapper:UriMapping MappedUri="/View/{pageName}.xaml" Uri="/{pageName}" />這個規則  
     

    2011年7月14日 6:37