簡體   English   中英

無法在WPF中更改UserControl

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM