2012-02-17 60 views
0

我有一個應用程序,它由一個「MainWindow」組成,並且主要內部我已經調用了像這樣的用戶控件 「loginControl」用戶控件中的自定義事件

<!-- Login user Control --> 
<local:LoginView x:Name="loginControl" HorizontalAlignment="Center" VerticalAlignment="Center" /> 

現在,在「loginControl」裏面我也有三個這樣的控件;

<local:ForgotPassword x:Name="userControlForgotPassword" Visibility="Collapsed" /> 
<local:CreateNewUser x:Name="userControlCreateNew" Visibility="Collapsed" /> 
<local:ChangePassword x:Name="userControlChangePassword" Visibility="Collapsed" /> 

並且在「loginControl」後面的代碼中,我調用了這些事件;

private void hyperLinkCreateNew_Click(object sender, RoutedEventArgs e) 
{ 
    userControlCreateNew.Visibility = System.Windows.Visibility.Visible; 
} 

private void hyperForgotPassword_Click(object sender, RoutedEventArgs e) 
{ 
    userControlForgotPassword.Visibility = System.Windows.Visibility.Visible; 
} 

private void hyperLinkChangePassword_Click(object sender, RoutedEventArgs e) 
{ 
    userControlChangePassword.Visibility = System.Windows.Visibility.Visible; 
} 

現在,我想那是什麼,當我點擊「創建新的」(這是在「loginControl」的鏈接,並改變「創造新的USR控制」的可見性)。通過使用自定義事件,「loginControl」窗口應該消失。我怎麼能這樣做?提前致謝。

回答

1
private void hyperLinkCreateNew_Click(object sender, RoutedEventArgs e) 
{ 
    userControlCreateNew.Visibility = System.Windows.Visibility.Visible; 
    Window parent = Window.GetWindow(this); 
    LoginView loginView = (LoginView)(parent.FindName("loginControl")); 
    loginView.Visibility = System.Windows.Visibility.Hidden; 
} 
+0

當我點擊hyperLinkCreateNew時,此代碼隱藏了loginControl,但userControlCreateNew未顯示出來。如果父母被隱藏,孩子們也會隱藏它(因爲父母的控制權也在父母身上)。 – 2012-02-18 10:28:15

+0

正如你所說的:「...當我點擊'創建新'時,使用自定義事件應該消失」loginControl「窗口。」 – JiKra 2012-02-18 11:48:01