参考panel添加窗体:

http://blog.csdn.net/illegalname/article/details/65444249

http://blog.csdn.net/Eastmount/article/details/21461275

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace WindowsFormsPanel
{
public partial class Form1 : Form
{
CSUHForm2 win1 = new CSUHForm2();
UHForm2 win2 = new UHForm2();
CamClayForm2 win3 = new CamClayForm2();
// win1 =new CSUHForm2 ();
//win2=new UHForm2 ();
//win3=new CamClayForm2 ();
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{ } private void groupBox1_Enter(object sender, EventArgs e)
{ } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedIndex > -)
{
switch (comboBox1.SelectedItem.ToString())
{
case "CSUH":
{ this.groupBox1.Controls.Clear();
win1.TopLevel = false;
win1.FormBorderStyle = FormBorderStyle.None;
win1.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
this.groupBox1.Controls.Add(win1); // 添加w1窗体
win1.Show(); this.panel1.Controls.Clear(); // 清空原有的控件
win1.TopLevel = false; // 非顶级窗口
win1.FormBorderStyle = FormBorderStyle.None; // 不显示标题栏
win1.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
this.panel1.Controls.Add(win1); // 添加w1窗体
win1.Show(); } break;
case "UH":
{
this.groupBox1.Controls.Clear();
win2.TopLevel = false;
win2.FormBorderStyle = FormBorderStyle.None;
win2.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
this.groupBox1.Controls.Add(win2); // 添加w1窗体
win2.Show(); this.panel1.Controls.Clear(); // 清空原有的控件
win2.TopLevel = false; // 非顶级窗口
win2.FormBorderStyle = FormBorderStyle.None; // 不显示标题栏
win2.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
this.panel1.Controls.Add(win2); // 添加w1窗体
win2.Show();
} break;
case "CamClay":
{
this.groupBox1.Controls.Clear();
win3.TopLevel = false;
win3.FormBorderStyle = FormBorderStyle.None;
win3.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
this.groupBox1.Controls.Add(win3); // 添加w1窗体
win3.Show(); this.panel1.Controls.Clear(); // 清空原有的控件
win3.TopLevel = false; // 非顶级窗口
win3.FormBorderStyle = FormBorderStyle.None; // 不显示标题栏
win3.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
this.panel1.Controls.Add(win3); // 添加w1窗体
win3.Show();
}
//dataGridView1.BackgroundColor = Color.Red;
break;
}
} } }
}

panel加载窗体


在groupbox中添加窗体:

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace LabOpt2
{
public partial class Form2GASetting : Form
{
public Form2GASetting()
{
InitializeComponent(); //在Form2GASetting的panel中添加gridcontrol
Form3CSUHConstitutiveSetting ModelParaSettingWin = new Form3CSUHConstitutiveSetting();//实例化一个参数设定窗口的实例化
ModelParaSettingWin.TopLevel = false; // ModelParaSettingWin设为非顶级窗口
ModelParaSettingWin.FormBorderStyle = FormBorderStyle.None; // ModelParaSettingWin设定为不显示标题栏
ModelParaSettingWin.Parent = panel1ModelParaSetting;// 将ModelParaSettingWin这个窗体的父容器设定为panel1ModelParaSetting这个panel,有无这句都行
ModelParaSettingWin.Dock = System.Windows.Forms.DockStyle.Fill; // 将窗体铺满这个panel
this.panel1ModelParaSetting.Controls.Add(ModelParaSettingWin);
ModelParaSettingWin.Show();//显示SpreadSheetReadWin窗体在主窗体的panelCtrols1中 //在Form2GASetting的groupcontrol组中添加gridcontrol
Form3CSUHConstitutiveSetting ModelParaSettingWin2 = new Form3CSUHConstitutiveSetting();//实例化一个参数设定窗口的实例化
ModelParaSettingWin2.TopLevel = false; // ModelParaSettingWin设为非顶级窗口
ModelParaSettingWin2.FormBorderStyle = FormBorderStyle.None; // ModelParaSettingWin设定为不显示标题栏
ModelParaSettingWin2.Parent = groupControl1ModelParaSetting;// 将ModelParaSettingWin这个窗体的父容器设定为panel1ModelParaSetting这个panel,有无这句都行
ModelParaSettingWin2.Dock = System.Windows.Forms.DockStyle.Fill; // 将窗体铺满这个panel
this.groupControl1ModelParaSetting.Controls.Add(ModelParaSettingWin2);
ModelParaSettingWin2.Show();//显示SpreadSheetReadWin窗体在主窗体的panelCtrols1中
} private void comboBoxEdit1SelectModel_SelectedIndexChanged(object sender, EventArgs e)
{
switch (comboBoxEdit1SelectModel.SelectedItem.ToString())
{
case "CSUH":
{ MessageBox.Show("选择了CSUH"); }
break;
case "UH":
{
//Form3CSUHConstitutiveSetting ModelParaSettingWin = new Form3CSUHConstitutiveSetting();//实例化一个参数设定窗口的实例化
//ModelParaSettingWin.TopLevel = false; // ModelParaSettingWin设为非顶级窗口
//ModelParaSettingWin.FormBorderStyle = FormBorderStyle.None; // ModelParaSettingWin设定为不显示标题栏
//ModelParaSettingWin.Parent = panel1ModelParaSetting;// 将ModelParaSettingWin这个窗体的父容器设定为panel1ModelParaSetting这个panel,有无这句都行
//ModelParaSettingWin.Dock = System.Windows.Forms.DockStyle.Fill; // 将窗体铺满这个panel
////Form3CSUHConstitutiveSetting.gridControl1ParaRange
//this.panel1ModelParaSetting.Controls.Add(ModelParaSettingWin);
//// ModelParaSettingWin.SelectedTabPage = xtraTabPageInputExcel;//在xtraTabControl1Form1这个tabcontrol中显示第一页即xtraTabPageInputExcel
////xtraTabPageInputExcel.Controls.Add(SpreadSheetReadWin); //在xtraTabPageInputExcel这个page中添加SpreadSheetReadWin窗体
//ModelParaSettingWin.Show();//显示SpreadSheetReadWin窗体在主窗体的panelCtrols1中
////Form3CSUHConstitutiveSetting.panel1ModelParaSetting
MessageBox.Show("选择了CSUH"); } break;
case "ModifiedCamClay":
{
MessageBox.Show("选择了ModifiedCamClay模型");
}
break;
case "CamClay":
{
MessageBox.Show("选择了CamClay模型");
}
break;
}
} private void panel1ModelParaSetting_Paint(object sender, PaintEventArgs e)
{ }
}
}

groupbox中添加form


怎样切换page呢:

xtraTabControl1.SelectedTabPage = xtraTabPage2;
xtraTabControl3.SelectedTabPage = xtraTabPage7;

         private void barButtonItem10_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{ Form2GASetting GaSettingWin = new Form2GASetting();
//this.panelControl1.Controls.Clear(); // 清空主窗体panelCtrols1内原有的控件
//SpreadSheetReadWin.Hide ();//这一句可以代替上面的清除语句
GaSettingWin.TopLevel = false; // SpreadSheetReadWin非顶级窗口
GaSettingWin.FormBorderStyle = FormBorderStyle.None; // 不显示标题栏
GaSettingWin.Dock = System.Windows.Forms.DockStyle.Fill; // 填充panel
//this.panelControl1.Controls.Add(GaSettingWin); // 添加SpreadSheetReadWin窗体
this.panelControl1.Controls.Add(xtraTabControl1Form1);//用这个选项卡填充panel
xtraTabControl1Form1.SelectedTabPage = xtraTabPageSetting;//在Form1中的xtraTabControl1Form1这个tabcontrol中显示第二页即xtraTabPageSetting
xtraTabPageSetting.Controls.Add(GaSettingWin);
GaSettingWin.Show();//显示SpreadSheetReadWin窗体在主窗体的panelCtrols1中
}

在tabpage中添加窗体

在xtratabcontrol中添加窗体:

http://www.cnblogs.com/w2011/archive/2013/02/18/2915794.html

c#在panel或groupbox中添加窗体,实现点击不同按钮或combox时panel中窗体切换,在xtratabcontrol中添加窗体的更多相关文章

  1. Winforn中使用FastReport实现点击导出按钮PDF预览并弹出另存为对话框

    场景 FastReport安装包下载.安装.去除使用限制以及工具箱中添加控件: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  2. scrapy爬虫,cmd中执行日志中显示了爬取的内容,但是运行时隐藏日志后(运行命令后添加--nolog),就没有输出结果了

    cmd下执行scrapy爬虫程序,不报错也没有输出,解决方案 想要执行parse能够在cmd看到parse函数的执行结果: 解决方法: settings.py 中设置  ROBOTSTXT_OBEY  ...

  3. 弹框勾选datatable中的数据,点击保存后添加到另一个表中,同一个页面

    需求描述:做编辑的时候,点击添加按钮,弹出数据表table2,勾选弹出框中的数据,点击保存后能够添加到table1中,并且已经被添加到table1中的数据,在弹出框中显示已选,checkbox隐藏:t ...

  4. 改变 Panel 跟 groupbox边框样式

    更改panel和groupbox的边框颜色因为在控件的属性中没有设置边框颜色的属性只有一个设置边框样式,遂在网络中搜寻出一下方法: panel的边框颜色在paint中重新对颜色进行定义 private ...

  5. 点击不同按钮生成不同窗体到某个panel上面,类似Frame用法--不错

    //点击不同按钮生成不同页面加载到某个panel上面.procedure TMainForm.DemoButtonClick(Sender: TObject); var NewDemoClass: T ...

  6. 每日学习心得:SharePoint 为列表中的文件夹添加子项(文件夹)、新增指定内容类型的子项、查询列表中指定的文件夹下的内容

    前言: 这里主要是针对列表中的文件下新增子项的操作,同时在新建子项时,可以为子项指定特定的内容类型,在某些时候需要查询指定的文件夹下的内容,针对这些场景都一一给力示例和说明,都是一些很小的知识点,希望 ...

  7. C#中添加三个线程同时启动执行某一方法,并依次调用某方法中的循环打印输。

    添加三个线程同时启动执行某一方法,并依次调用某方法中的打印输:ABC ABC ABC ABC 实现代码如下: using System; using System.Collections.Generi ...

  8. 在页面上绘制一张表格,使用 DOM 节点的动态添加和删除向表格中插入数据,点击表格每行后的“删除”超链接

    查看本章节 查看作业目录 需求说明: 在页面上绘制一张表格,使用 DOM 节点的动态添加和删除向表格中插入数据,点击表格每行后的"删除"超链接,使用 DOM 节点的删除操作将对应的 ...

  9. 从头开始一步一步实现EF6+Autofac+MVC5+Bootstarp极简前后台ajax表格展示及分页(二)前端修改、添加表格行点击弹出模态框

    在前一篇中,由于不懂jquery,前端做的太差了,今天做稍做修改,增加一个跳转到指定页面功能,表格行点击样式变化.并且在表格中加入bootstarp的按钮组,按钮点击后弹出模态框,须修改common, ...

随机推荐

  1. java链接JDBC中的?问题

    String sql = "select * from student where name= ?"; PreparedStatement pst = conn.prepareSt ...

  2. f5故障排除

    1.硬件问题 1)硬盘:查看/var/log/daemon, kern日志,smartctl测试,EUD 2)PSU: 查看LCD报警,/var/log/ltm,EUD等 3)内存:可能导致设备突然重 ...

  3. Extract Dataset

    FROM <SAP PROGRAM DESIGN> Extract Datasets简称为Extract,是SAP中除了内表之外的另一种大量内存数据处理方式,允许用户动态地存储并排序结构化 ...

  4. 2018.3.15 css课外小知识

    1, 如果手动写动画, 最小的时间间隔是多久 为什么 多数显示器默认频率是60Hz  1s刷新60次  所以理论最小是1/60*1000ms=16.7ms 2. display:inline-bloc ...

  5. python 使用内置方法读取注册表

    #coding:utf-8 import _winreg key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER,r"键值") #获取该键的 ...

  6. sap 给集团分配一个逻辑系统

    1.进入事务代码 SALE定义一个新的逻辑系统 2.通过事务代码RZ10 进入之后, 将参数login/no_automatic_user_sapstar 修改为“0”, 然后重启SAP服务生效 3. ...

  7. linux C程序中获取shell脚本输出(如获取system命令输出)

    转载自 http://blog.csdn.net/hjxhjh/article/details/7909518 1. 前言 Unix 界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些 ...

  8. spring + ibatis 多数据源事务(分布式事务)管理配置方法(转)

    spring + ibatis 多数据源事务(分布式事务)管理配置方法(转) .我先要给大家讲一个概念:spring 的多数据源事务,这是民间的说法.官方的说法是:spring 的分布式事务.明白了这 ...

  9. c# 软件绑定网卡mac的实用

    一:网上搜c# 绑定网卡Mac 有好多信息,其中有篇分为几种方法获取mac 的方法,结果获得到的是一个list 队列的信息,信息获取到所有的物理网卡,无线网卡,蓝牙,隧道的网卡物理地址.对与软件绑定物 ...

  10. RabbitMQ 的基本介绍

    RabbitMQ官网教程:http://www.rabbitmq.com/getstarted.html RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现.AMQP :Adv ...