C# 窗体 切换、重复显示等遗留问题解决(第五天)
一、解决同一窗体多次点击重复显示BUG
(1)点击弹出学校窗体
#region 弹出学校窗体
/// <summary>
/// 弹出学校窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void SchoolToolStripMenuItem_Click(object sender, EventArgs e)
{
//点击后显示SchoolTan这个弹窗
SchoolTan schooltanchuang=new SchoolTan(); //this.IsMdiContainer = true;
//WFromMain mainForm = new WFromMain();
//schooltanchuang.MdiParent = this;
/*
* 方法:明确父子关系:
son form = new Form();
form.MdiParent = this(father);
form.show();
前提是先要设置father窗体
isMdiContainer = true;
* **/
if (this.MdiChildren==null||this.MdiChildren.Length==)
{
schooltanchuang.Show();
//让子窗体不超出父窗体界限,给子窗体指定父窗体
schooltanchuang.MdiParent = this;
return;
}
bool flag = false;
foreach (var item in this.MdiChildren)
{
if (item.Text == schooltanchuang.Text)
{
schooltanchuang = item as SchoolTan;
schooltanchuang.Activate();
flag = true;
break;
}
}
if (!flag)
{
schooltanchuang.Show();
//给子窗体指定父窗体
schooltanchuang.MdiParent = this;
}
}
#endregion
(2)弹出商会组织窗体
#region 弹出商会组织窗体
/// <summary>
/// 弹出商会组织窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ShanghuiToolStripMenuItem_Click(object sender, EventArgs e)
{
//点击弹出重庆商会窗体
ShangHui shang = new ShangHui();
//shang.Show();
//shang.MdiParent = this;
if (this.MdiChildren == null || this.MdiChildren.Length == )
{
shang.Show();
//让子窗体不超出父窗体界限,给子窗体指定父窗体
shang.MdiParent = this;
return;
}
bool flag = false;
foreach (var item in this.MdiChildren)
{
if (item.Text == shang.Text)
{
shang = item as ShangHui;
shang.Activate();
flag = true;
break;
}
}
if (!flag)
{
shang.Show();
//给子窗体指定父窗体
shang.MdiParent = this;
}
}
#endregion
(3)点击弹出公益组织窗体
#region 点击弹出公益组织窗体
/// <summary>
/// 点击弹出公益组织窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void 公益组织ToolStripMenuItem_Click(object sender, EventArgs e)
{
//点击弹出公益组织窗体
GongYi gongyi = new GongYi();
//gongyi.Show();
//gongyi.MdiParent = this;
if (this.MdiChildren == null || this.MdiChildren.Length == )
{
gongyi.Show();
//让子窗体不超出父窗体界限,给子窗体指定父窗体
gongyi.MdiParent = this;
return;
}
bool flag = false;
foreach (var item in this.MdiChildren)
{
if (item.Text == gongyi.Text)
{
gongyi = item as GongYi;
gongyi.Activate();
flag = true;
break;
}
}
if (!flag)
{
gongyi.Show();
//给子窗体指定父窗体
gongyi.MdiParent = this;
}
}
#endregion
二、关闭所有的运行环境操作
/// <summary>
/// 关闭运行环境
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void 关闭全部窗体ToolStripMenuItem_Click(object sender, EventArgs e)
{
//关闭运行环境
Environment.Exit();
}
三、右键菜单关闭所有弹窗(右键菜单有多个选项时的情况)
private void CloseAllToolStripMenuItem_Click(object sender, EventArgs e)
{ int len = this.MdiChildren.Length;
for (int i = ; i <len ; i++)
{
Form frm = this.MdiChildren[];
frm.Close();
}
}
四、获取radiobatton的text值的方法
private void btnNanNv_Click(object sender, EventArgs e)
{
string checkedRBName = ""; //取得选中单选按钮的名称
if (radioButtonMan.Checked)
{
checkedRBName = radioButtonMan.Name;
string textNan = radioButtonMan.Text;
MessageBox.Show("这是选中了"+textNan);
}
else if (radioButtonGirl.Checked)
{
checkedRBName = radioButtonGirl.Name;
string textNv = radioButtonGirl.Text;
MessageBox.Show("这是选中了"+ textNv);
//获得和radioButton按钮对应标签的内容,用的是 radioButton2.Text属性; } MessageBox.Show(checkedRBName + " was checked.");
}
C# 窗体 切换、重复显示等遗留问题解决(第五天)的更多相关文章
- c# winform中窗体切换后释放及防止重复生成
问题1:窗体切换后如何关闭,并释放资? c# winform中,2个窗体,form1和form2,互相切换的时候执行 this.Hide(); Form2 form2 = new Form2(); f ...
- 单件模式Singleton来控制窗体被重复或多次打开
本文转载:http://blog.csdn.net/a0700746/article/details/4473796 一般在百度搜一下,会出来一下内容,看来很好用.Singleton很方便的一个用处就 ...
- IOS之TableViewCell重用机制解决上下刷新重复显示
首先我是一个经验浅薄的iOS开发人员,这个问题想必许多初学者经常遇到这些问题,在面试中也会经常问到.现在我们一一解决. 首先我们要知道TableViewCell重用机制的原理是什么,我们抽象的理解为古 ...
- 在SSRS的每一页重复显示table header
现在在做一个关于SSRS报表展示的项目,但是我困顿在如何在table的每一页让table header重复显示.因为我在table属性中勾选了"Report header columns o ...
- 如何实现MDI窗体不重复打开同一个子窗体?
使用MDI窗体时,默认是可以多次打开同一个子窗体的,那么如何控制不重复打开同一个子窗体呢?MDI窗体有个重要属性——MdiChildren,该属性表示MDI窗体打开的子窗体的数组,循环遍历该数组,可以 ...
- 在Bootstrap开发中解决Tab标签页切换图表显示问题
在做响应式页面的时候,往往需要考虑更多尺寸设备的界面兼容性,一般不能写死像素,以便能够使得界面元素能够根据设备的不同进行动态调整,但往往有时候还是碰到一些问题,如Tab标签第一页面正常显示,但是切换其 ...
- c#在panel或groupbox中添加窗体,实现点击不同按钮或combox时panel中窗体切换,在xtratabcontrol中添加窗体
参考panel添加窗体: http://blog.csdn.net/illegalname/article/details/65444249 http://blog.csdn.net/Eastmoun ...
- WPF最小化窗体后激活函数显示不了窗体
WPF最小化窗体后激活函数显示不了窗体 今天测试小哥给我提了一些问题,其中一个问题是这样的,点击web端的一个链接,是能启动本地的一个应用程序的,如果本地应用程序已启动(通过tcp进程间通信),那么应 ...
- DevExpress XtraPivotGrid 交叉表 重复显示问题
转自:http://www.cnblogs.com/xiayan/archive/2011/11/04/2236389.html 最近发现xtrareport 的PivotGrid实现交叉表非常的简单 ...
随机推荐
- 【POJ3159】Candies(差分约束系统)
题意:有一些人, 给n个人派糖果,给出m组约束,每组约束包含A,B,c 三个数, 意思是A的糖果数比B少的个数不多于c,即B的糖果数 - A的糖果数<= c . 最后求n 比 1 最多多多少糖果 ...
- svn: 命令行上传多个指定文件
上传指定后缀名文件 svn st | grep swift | cut -d' ' -f8- > targets.txt svn ci -m "comments" --tar ...
- Git flow的分支模型与及经常使用命令简单介绍
Git flow是git的一个扩展集,它基于Vincent Driessen 的分支模型,文章"A successful Git branching model"对这一分支模型进行 ...
- android 使用post 提交
1.使用post 方式提交时不要把须要传递的參数写在URL 中,一定要使用 BasicNameValuePair 这个类来完毕 创建我想发送一个类似Get 方式的一个URL ---------- ht ...
- LeetCode 977. Squares of a Sorted Array (有序数组的平方)
题目标签:Array 题目给了我们一组 从小到大的 integers,让我们平方数字 并且 也排序成 从小到达. 因为有负数在里面,平方后,负数在array的位置会变动. 可以设left 和 righ ...
- U4699 鸡蛋
U4699 鸡蛋 0通过 37提交 题目提供者飞翔 标签 难度尚无评定 提交 最新讨论 暂时没有讨论 题目背景 调皮的kkk准备恶搞他的同学兼朋友——你! 题目描述 kkk准备从楼上扔鸡蛋下来砸在lz ...
- P1830 轰炸III
P1830 轰炸III 84通过 145提交 题目提供者wanglichao1121 标签模拟矩阵洛谷原创 难度普及/提高- 提交该题 讨论 题解 记录 最新讨论 暂时没有讨论 题目背景 一个大小为N ...
- HDU 5862Counting Intersections
Counting Intersections Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/ ...
- 获取Access数据里所有表的名称和表的字段
-------------//获取Access数据库表名 public void GetTableName() { string connSt ...
- [Apple开发者帐户帮助]七、注册设备(1)注册一个设备
您需要已注册的设备来创建开发或临时配置文件.要使用开发人员帐户注册设备,您需要拥有设备名称和设备ID. 注意:如果您使用自动签名,Xcode会为您注册连接的设备.Xcode Server也可以配置为注 ...