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