Winform主窗体设计
主窗体顶部为菜单按钮,子窗体内嵌入Panel显示
界面如下:

第二步,主窗体离不开的几个方法
1,点击菜单功能,加载子窗体
private void btnOpenForm_Click(object sender, EventArgs e)
{
try
{
string frmName = ((ButtonX)sender).Tag.ToString();
CloseForm();
Form objForm =
(Form)Assembly.LoadFrom("CardManager.EXE").CreateInstance("CardManager." + frmName);
this.OpenForm(objForm);
}
catch (Exception ex)
{
MessageBox.Show("错误提示:" + ex.Message,"提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
2,打开窗体方法
private void OpenForm(Form objForm)
{
objForm.TopLevel = false;
objForm.Parent = this.pnlFill;
objForm.FormBorderStyle = FormBorderStyle.None;
objForm.StartPosition = FormStartPosition.CenterParent;
objForm.WindowState = FormWindowState.Maximized;
objForm.Show();
}
3,关闭窗体方法
private void CloseForm()
{
foreach (Control item in this.pnlFill.Controls)
{
if (item is Form)
{
Form objFrm = item as Form;
objFrm.Close();
this.pnlFill.Controls.Remove(item);
}
}
}
4,关闭系统事件的处理 ,用到窗体的FormClosing事件
private void FrmMain_FormClosing(object sender, FormClosingEventArgs e)
{
DialogResult result = MessageBox.Show("真的要关闭系统吗?", "系统提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if(result==DialogResult.Cancel)
{
e.Cancel = true;
}
}
Winform主窗体设计的更多相关文章
- C#WinForm窗体内Panel容器中嵌入子窗体、程序主窗体设计例子
C#WinForm父级窗体内Panel容器中嵌入子窗体.程序主窗体设计例子 在项目开发中经常遇到父级窗体嵌入子窗体所以写了一个例子程序,顺便大概划分了下界面模块和配色,不足之处还望指点 主窗体窗体采用 ...
- C#--WinForm项目主窗体设计
主窗体基本设置 大小.颜色.去边框.出现的位置 Panel控件 背景图.颜色.布局: Label标签 文本.字体.背景颜色.布局 按钮 布局.文本.字体颜色.背景色. 底部panel绑定控件边框.颜色 ...
- Winform 主窗体更换 构造函数传值
制作登录窗体: 制作一个登陆窗体,实现点击按钮关闭此窗体并打开另一个窗体 直接在按钮点击事件中,实例化一个想要打开的窗体 使用show方法打开,并把登陆窗体的visible属性改为false Form ...
- Winform主窗体的设置
软件必然涉及到一个主窗体MainForm,下面介绍一下几个简单的属性设置,可能比较有用 (1)icon,当然是咱们软件的图标了,设置上去即可 (2)isMdiContainer,这个比较重要了哦,必须 ...
- WPF一步步开发XMPP IM客户端2:主窗体设计
UI设计方案: 在设计窗体UI之前,先要了解一些主要的接口和帮助类: 对于主窗的左侧列表,容器内的Item必须实现ILeftItem的接口,比如联系人.系统消息.群等,接口包含点击事件 public ...
- PyQt5学习笔记-从主窗体打开一个子窗体
PyQt5学习笔记-从主窗体打开一个子窗体 软件环境: Eric6+Python3.5+PyQt5 试验目标: 1.点击菜单项Open,打开一个子窗体 2.点击按钮Open,打开一个子窗体 主窗体设计 ...
- C# winform窗体设计-通过条件查询数据
在winform 数据库设计中,有时候需要通过条件查询对应的数据,并且将数据显示在文本框(or 富文本框)中,下面,小编将讲述通过一个条件: 首先,我们需要对数据库建立连接,并且执行数据库命令,在此之 ...
- C# winform窗体设计-查询单个值
查询单个值主要用于对成绩最低分,最高分,学生总数,学生性别等信息的统计 在查询单个值的时候用到了ExecuteScalar方法,连接以及语句方面,以及思路和对数据的增删改差不多 下面请看一段代码: s ...
- WinForm 之 程序启动不显示主窗体
在 WinForm 程序启动时,不显示主窗体的实现方法主要有以下5种,第五种最简单,而且效果也不错,第四种方法也值得推荐. 实例代码如下: //隐藏窗体的方法1/5:不指定任何窗体为主窗体 //注意: ...
随机推荐
- zend framework2 下载及安装
1.安装XAMPP 2.安装zend studio 3.在GITHUB上下载一个zendframework模板,插入到IDE中 4.将下载的zend framework2文件夹解压放在vendor文件 ...
- PHP文件缓存实现
有些时候,我们不希望使用redis等第三方缓存,使得系统依赖于其他服务.这时候,文件缓存会是一个不错的选择. 我们需要文件缓存实现哪些共更能: 功能实现:get.set.has.increment.d ...
- windows svn 配置以及iis同步传送
服务端:http://www.visualsvn.com/server/download/ 客户端: http://tortoisesvn.net/downloads.html 建立版本之后,在版本 ...
- avalon使用笔记
//保存取消操作(使用双向绑定) <div ms-controller='test'> <table border="1" style="border- ...
- SRM 146 DIV1 600
Problem Statement Masterbrain is a two player board game in which one player decides on a secre ...
- Wince 6.0适用 .NET 使用HttpRequest的Post上传文件,服务端的Web API接收Post上传上来的文件 代码
//调用的示例 private string fileName = "InStorageData.csv"; string filePath = parentPath + Comm ...
- DataSet读取数据
using System.Data; using System.Data.SqlClient; namespace ConsoleApplication3 { class Program { stat ...
- SQL Server更新表(用一张表的数据更新另一张表的数据)
a) 写法轻松,更新效率高: update table1 set field1=table2.field1,field2=table2.field2 from table2 where table1. ...
- centos安装python
安装Development tools yum groups install -y 'development tools' yum install -y zlib-dev openssl-devel ...
- KeepAlived主备/主主模型高可用Nginx
部署准备: 两台CentOS 7主机HA1和HA2 CentOS 7 基于rpm包安装Nginx: 由于Base源中没有Nginx,所以要安装EPEL源,命令如下: wget http://dl.fe ...