Click here to Skip to main content
15,941,071 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
Hello, I am having a problem navigating to pages in my silverlight App. I am using a normal button instead of a Hyperlink button.

Here is my xaml code:
C#
        <navigation:Frame x:Name="ContentFrame"
                          Source="/RequestViews" Navigated="ContentFrame_Navigated"  Height="279" Width="494" HorizontalAlignment="Right">
            <navigation:Frame.UriMapper>
                <uriMapper:UriMapper>
                    <uriMapper:UriMapping Uri="/{pageName}" MappedUri="/RequestViews/Home.xaml"/>
                    <uriMapper:UriMapping Uri="/{pageName}" MappedUri="/RequestViews/{pageName}.xaml"/>
                </uriMapper:UriMapper>
            </navigation:Frame.UriMapper>
        </navigation:Frame>
    </Border>

    <Grid x:Name="NavigationGrid" >
        <ComboBox Height="24" HorizontalAlignment="Left" Margin="203,13,0,0" Name="comboBox1" VerticalAlignment="Top" Width="166" />
        <TextBox Height="24" HorizontalAlignment="Left" Margin="54,14,0,0" Name="textBox1" VerticalAlignment="Top" Width="108" />
        <Button Content="Button" Height="35" HorizontalAlignment="Left" Margin="422,21,0,0" Name="button1" VerticalAlignment="Top" Width="113" Click="button1_Click_1" />
    </Grid>
</Grid>

and my code behind:
C#
private void button1_Click_1(object sender, RoutedEventArgs e)
{
   // ContentFrame.Navigate(new Uri("/Home", UriKind.Relative));

}

I have also tried:
C#
this.Dispatcher.BeginInvoke(() => this.ContentFrame.Navigate(new Uri("/Home", UriKind.Relative)));
Posted

1 solution

Remove below line and see if it is working or not
C#
<urimapper:urimapping uri="/{pageName}" mappeduri="/RequestViews/Home.xaml" xmlns:urimapper="#unknown" />


Also it has nothing to do with the link control or button.

I can simply write
C#
this.ContentFrame.Navigate(new Uri("/pagename", UriKind.Relative));


where pagename.xaml is the name of the page.

HTH.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900