如何从Visual Studio中的另一个用户控件打开新的用户控件

时间:2018-01-07 22:45:05

标签: c# asp.net visual-studio visual-studio-2012 user-controls

我创建了2个菜单(一个用于管理员,另一个用于用户)这两个菜单是用户控件,我有一个面板,它将显示所有内容(其他用户控件)..

userControl 1是:Admin_menu

Button1:Admin_menu中的按钮

按钮2:Admin_menu中的按钮

userControl 3是:content1

userControl 4是:content2

我有一个包含两个方面的主表单: 左侧:Admin_menu 右侧:内容将显示的面板

所有userControl都添加到主窗体

问题是:当我点击button1显示content1或button2显示content2时,我收到此消息:

Problem pic

我在Admin_menu.cs中的代码:

        public Admin_menu()
        {
            InitializeComponent();
        }

        private void btnTrainers_Click(object sender, EventArgs e)
        {
            Parent.Controls["trainersTab1"].BringToFront();
        }

        private void btnBranches_Click(object sender, EventArgs e)
        {
            //BranchesTab branchespage = new BranchesTab();
            //this.Parent.Controls.Add(branchespage);
            Parent.Controls["branchespage"].BringToFront();
        }

        private void btnTimeTables_Click(object sender, EventArgs e)
        {
            Parent.Controls["timeTableTab1"].BringToFront();
        }

1 个答案:

答案 0 :(得分:0)

最有可能

Parent.Controls["trainersTab1"]

返回null。

这个答案可能会帮助您找到trainerTab1控件,假设控件的名称也称为“trainerTab1”。

Get a Windows Forms control by name in C#

Control trainerTab1 = this.Controls.Find("trainerTab1", true);
if (trainerTab1 != null) trainerTab1.BringToFront();