In my Application i Have two TabItem when i change Tab item then Frame History is lost, when i again select frame tab. I don't to destroy frame history.
Here is my Code
Xaml Side
<sdk:TabControl>
<sdk:TabItem>
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<Button Content="Back" Height="25" x:Name="btnBack" Width="Auto" VerticalAlignment="Top" HorizontalAlignment="Left" Click="btnBack_Click" />
<Button Content="Forward" Height="25" x:Name="btnForward" Width="Auto" VerticalAlignment="Top" HorizontalAlignment="Left" Click="btnForward_Click_1" />
<Button Content="page1" Height="25" Width="Auto" VerticalAlignment="Top" HorizontalAlignment="Right" Click="Button_Click_1"/>
<Button Content="page2" Height="25" Width="Auto" VerticalAlignment="Top" HorizontalAlignment="Right" Click="Button_Click_2"/>
<Button Content="page3" Height="25" Width="Auto" VerticalAlignment="Top" HorizontalAlignment="Right" Click="Button_Click_3"/>
</StackPanel>
<navigation:Frame x:Name="mainFrame" Source="/Page2.xaml" Margin="0,20,0,0" Navigated="mainFrame_Navigated_1">
</navigation:Frame>
</StackPanel>
</sdk:TabItem>
<sdk:TabItem/>
</sdk:TabControl>
Code Side
private void Button_Click_1(object sender, RoutedEventArgs e)
{
if (mainFrame.CanGoBack)
{
mainFrame.GoBack();
}
}
private void Button_Click_2(object sender, RoutedEventArgs e)
{
if (mainFrame.CanGoForward)
{
mainFrame.GoForward();
}
}
private void Button_Click_3(object sender, RoutedEventArgs e)
{
mainFrame.Navigate(new Uri("/Pages/Page2.xaml", UriKind.Relative));
}
private void Button_Click_4(object sender, RoutedEventArgs e)
{
mainFrame.Navigate(new Uri("/Pages/Page3.xaml", UriKind.Relative));
}
private void mainFrame_Navigated(object sender, NavigationEventArgs e)
{
if (mainFrame.CanGoBack)
btnBack.IsEnabled = true;
else
btnBack.IsEnabled = false;
if (mainFrame.CanGoForward)
btnForward.IsEnabled = true;
else
btnForward.IsEnabled = false;
}
Please help to Solve this Problem