2013-04-23 44 views
0

我是新來的c#。我創建了主窗口,我將用戶控件與命令屏幕之間切換:C#WPF關閉新用戶控件

Switcher.Switch(new NewPage()); 

類切換是:

public static class Switcher 
    { 
     public static MainWindow pageSwitcher; 

     public static void Switch(UserControl newPage) 
     { 
      pageSwitcher.Navigate(newPage); 
     } 

     public static void Switch(UserControl newPage, object state) 
     { 
      pageSwitcher.Navigate(newPage, state); 
     } 

    } 

但如何我退出用戶控制?我希望完成它(如後退按鈕)。我可以使用:

Switcher.Switch(new PreviousPage()); 

但它會將新頁面保留在內存中,不會釋放它。 NewPage公司類

例子:

namespace MyProject.Screens 
{ 

    public partial class NewPage : UserControl 
    { 
     public NewPage() 
     { 
      InitializeComponent(); 
     } 

     private void back_button_Click_(object sender, RoutedEventArgs e) 
     { 
      //what to put here? 
     } 
    } 
} 

回答

1

框架做了很多繁重的爲你導航,包括您所感興趣的「後退」操作。

看看http://msdn.microsoft.com/en-us/library/ms750478.aspx

的NavigationService .GoBack是你將要使用的。

如果您正在使用Windows應用商店應用程序,請告訴我,因爲我的答案會有所不同。

1

試試這個:

private void back_button_Click_(object sender, RoutedEventArgs e) 
    { 
     Window parentWindow = (Window)this.Parent; 
     parentWindow.Close(); 
    } 
+1

這爲我歡呼 – 2014-06-17 12:49:50