[英]Can't change an UserControl in WPF
我有一個有趣的問題。 在我的Main.cs代碼中,我有一個用於更改UserControl我的MainWindow顯示的方法。 這是代碼:
public void NextPage()
{
if (numberUserControl < 4)
{
numberUserControl++;
SelectUserControl();
}
}
private void SelectUserControl()
{
switch (numberUserControl)
{
case 1:
this.contentControl.Content = new UserControls.ServersListControl();
break;
case 2:
this.contentControl.Content = new UserControls.DepartmentsListControl();
break;
default:
MessageBox.Show("lol");
break;
}
}
(尚未完成,這就是為什么我的默認顯示大聲笑)
當我從MainWindow調用方法NextPage時,它的工作非常順利。 但是當我使用此代碼時:
public void Button_Click(object sender, RoutedEventArgs e)
{
MainWindow main = new MainWindow();
main.NextPage(/*data*/);
}
UserControl不變! 我用調試器檢查了代碼,即使在DepartmentsListControl構造函數中,代碼也傳遞到每個塊中,但是顯示的UserControl不變...而且我真的不知道為什么!
請幫忙 ! :)
您正在創建一個與當前實例沒有連接的MainWindow
新實例。 它超出范圍並在Button_Click
事件結束后立即丟失。
假設按鈕在MainWindow
,只需執行以下操作:
public void Button_Click(object sender, RoutedEventArgs e)
{
NextPage(/*data*/);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.