Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#如何设计供以后使用的面板…(设置屏幕)_C#_Panels - Fatal编程技术网

C#如何设计供以后使用的面板…(设置屏幕)

C#如何设计供以后使用的面板…(设置屏幕),c#,panels,C#,Panels,所以我现在正在做一个设置屏幕,左边是一棵树,右边是一个面板。屏幕上的面板将取决于选择的树项目 我只是想知道如何设计这些面板并保存主题以供以后(运行时)使用 我需要去把它们画出来吗?查看代码,然后复制到一个类或什么的 对不起,如果我的问题有点模糊,但我不确定我想要什么:-O 编辑是的,我希望制作一个类似Visual Studio中的设置屏幕。左边有一棵树(类似于浏览器),然后为每个树节点创建一个新的表单布局。您需要创建用户控件而不是面板,在设计器中很容易编辑。将树视图停靠在左侧,并使用如下代码选择

所以我现在正在做一个设置屏幕,左边是一棵树,右边是一个面板。屏幕上的面板将取决于选择的树项目

我只是想知道如何设计这些面板并保存主题以供以后(运行时)使用

我需要去把它们画出来吗?查看代码,然后复制到一个类或什么的

对不起,如果我的问题有点模糊,但我不确定我想要什么:-O


编辑是的,我希望制作一个类似Visual Studio中的设置屏幕。左边有一棵树(类似于浏览器),然后为每个树节点创建一个新的表单布局。

您需要创建用户控件而不是面板,在设计器中很容易编辑。将树视图停靠在左侧,并使用如下代码选择活动用户控件:

public partial class Form1 : Form {
    public Form1() {
        InitializeComponent();
        treeView1.AfterSelect += new TreeViewEventHandler(treeView1_AfterSelect);
    }
    private UserControl mActivePanel;

    void treeView1_AfterSelect(object sender, TreeViewEventArgs e) {
        UserControl newPanel = null;
        switch (e.Node.Index) {
            case 0: newPanel = new UserControl1(); break;
            case 1: newPanel = new UserControl2(); break;
            // etc...
        }
        if (newPanel != null) {
            if (mActivePanel != null) {
                mActivePanel.Dispose();
                this.Controls.Remove(mActivePanel);
            }
            newPanel.Dock = DockStyle.Fill;
            this.Controls.Add(newPanel);
            this.Controls.SetChildIndex(newPanel, 0);
            mActivePanel = newPanel;
        }
    }
}

你的意思是像VS的选项屏幕?你打算在面板上添加什么?你好,谢谢你的回复,但我在理解这里发生的事情时有点困难。请你详细说明或提供一个链接,我可以阅读更多关于这一点。谢谢。将用户控件添加到项目中,不要使用面板。我想不出一个好的链接。我发布的代码正是在AfterSelect事件处理程序中切换用户控件所需的管道。试试看。