如何将已打开的MDI子窗体设置为普通窗体 [问题点数:20分]

Bbs1
本版专家分:0
结帖率 50%
Bbs9
本版专家分:90002
版主
Blank
进士 2017年 总版技术专家分年内排行榜第五
Blank
银牌 2017年7月 总版技术专家分月排行榜第二
Blank
铜牌 2017年6月 总版技术专家分月排行榜第三
Blank
红花 2017年12月 .NET技术大版内专家分月排行榜第一
2017年11月 .NET技术大版内专家分月排行榜第一
2017年10月 .NET技术大版内专家分月排行榜第一
2017年9月 .NET技术大版内专家分月排行榜第一
2017年8月 多媒体开发大版内专家分月排行榜第一
2017年8月 .NET技术大版内专家分月排行榜第一
2017年7月 多媒体开发大版内专家分月排行榜第一
2017年7月 .NET技术大版内专家分月排行榜第一
2017年6月 .NET技术大版内专家分月排行榜第一
2017年5月 多媒体开发大版内专家分月排行榜第一
2017年4月 多媒体开发大版内专家分月排行榜第一
2016年1月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年11月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年10月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年9月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年7月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年6月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年3月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2015年1月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2014年12月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2014年11月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2014年10月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2014年9月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2014年8月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
2014年7月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第一
Bbs1
本版专家分:0
vb.net详解MDI窗体操作方法
MDI<em>窗体</em>可以避免<em>打开</em><em>窗体</em>的时候被无数个<em>子<em>窗体</em></em>困扰,我将为大家一一的介绍一下vb.net中MDI<em>窗体</em>的操作方法 一、如何创建MDI<em>窗体</em>? 1、创建<em>mdi</em>主<em>窗体</em> 新建建立一个默认空白的Windows应用程序,在Form1<em>窗体</em>的属性窗口中找到IsMDIContainer 属性,<em>设置</em>为 True 2、创建MDI<em>子<em>窗体</em></em> 在vb.net中,<em>mdi</em><em>子<em>窗体</em></em>就是<em>普通</em>的<em>窗体</em>,无需更改其属性。所有直
6种方法使MDI父窗体调用窗体窗体同时只能显示一个)
种方法使MDI父<em>窗体</em>调用<em>子<em>窗体</em></em>(<em>子<em>窗体</em></em>同时只能显示一个)有一个MDI<em>窗体</em>叫MainForm,多个<em>子<em>窗体</em></em>,如Form1,Form2……要使<em>子<em>窗体</em></em>同时只能显示一个,那么方法1dim Form1 as new form1 Form1.showDialog()此方法一个MDI<em>窗体</em>同时只能显示一个,方法2在每一个<em>子<em>窗体</em></em>的应用单态设计模式在每一个<em>子<em>窗体</em></em>上声明privat
MDI窗体在父窗体中居中显示的设置
MDI<em>子<em>窗体</em></em>在父<em>窗体</em>中居中显示的<em>设置</em>
C# 实现MDI窗体打开一个(打开新的窗口,关闭其他窗口)
C# 实现MDI<em>子<em>窗体</em></em>只<em>打开</em>一个(<em>打开</em>新的窗口,关闭其他窗口)2010年05月04日 12:331.private Form m_CurrentMdiChild;//声明<em>窗体</em>                                    2.<em>打开</em>你想要的窗口private void ShowForm(){Form1 frm = new Form1();frm.ShowMdiChild(frm)
C#mdi窗体最大化问题
 c# MDI<em>子<em>窗体</em></em>最大化2008-08-15 13:23有时候我们需要在<em>子<em>窗体</em></em>显示的时候就是最大化(也就是填充了整个父<em>窗体</em>),但通常会遇到以下麻烦:如果在 Visual Studio 2005里通过属性工具栏设定了<em>子<em>窗体</em></em>的 WindowState 为 Maximized,然后在运行过程中会发现<em>子<em>窗体</em></em>实例化时不会最大化,而是当改变了父<em>窗体</em>的大小之后才随即最大
如何:创建 MDI 父窗体窗体、确定活动的 MDI 窗体
Microsoft Visual Studio 2008/.NET Framework 3.5Windows <em>窗体</em>编程如何:创建 MDI 父<em>窗体</em>多文档界面 (MDI) 应用程序的基础是 MDI 父<em>窗体</em>。它是包含 MDI 子窗口的<em>窗体</em>,MDI 子窗口是用户与 MDI 应用程序在其中进行交互的子窗口。在 Windows <em>窗体</em>设计器中以及以编程方式创建 MDI 父<em>窗体</em>都很容易。在设计时创建 MDI 父窗...
C# Winform在MDI中打开一个窗体关闭上一个窗体
C# Winform在MDI中<em>打开</em>一个<em>子<em>窗体</em></em>关闭上一个<em>子<em>窗体</em></em>
C# MDI窗体窗体只显示一次
<em>子<em>窗体</em></em>: //定义静态变量 static frmInquireStudent inquire = null; /// &amp;amp;lt;summary&amp;amp;gt; /// <em>子<em>窗体</em></em>只显示一次 /// &amp;amp;lt;/summary&amp;amp;gt; /// &amp;amp;lt;returns&amp;amp;gt;&amp;amp;lt;/returns&amp;amp;gt;
C# MDI编程中窗体调用窗体的问题
在MDI编程中,从父<em>窗体</em>调用了<em>子<em>窗体</em></em>,会出现<em>子<em>窗体</em></em>隶属父<em>窗体</em>。但当我们要从一<em>子<em>窗体</em></em>调用另一个<em>子<em>窗体</em></em>,并且,调用过后,这个被<em>子<em>窗体</em></em>调用出来的<em>子<em>窗体</em></em>,会出现隶属于父<em>窗体</em>的情况是什么实现的呢? 下面是针对这种情况的一个简单实现。   在一个项目中建三个<em>窗体</em>,分别为Form1、Form2、Form3。其中,Form1<em>设置</em>为父<em>窗体</em>,在Form1上有一个按钮button1,在这个按钮的Click事件中,
C#下让MDI窗体布满父窗体的整个工作区
 前提是你已经建立了一个<em>窗体</em>Form1,并<em>设置</em><em>窗体</em>的  IsMdiContainer  属性为真,其次就是建立<em>窗体</em>的<em>子<em>窗体</em></em>Form2,并<em>设置</em>所有的<em>窗体</em>的FormBorderStyle属性为FixedSingle,最后就是<em>设置</em>了,在Form1调用Form2<em>子<em>窗体</em></em>的处理程序中,添加如下代码:            Form2.WindowState = FormWindowState.Normal
Windows应用程序C#创建MDI父窗体窗体
一:创建父<em>窗体</em>1.创建 Windows 应用程序.2.在"属性"窗口中,将 IsMDIContainer 属性<em>设置</em>为true. 这将该<em>窗体</em>指定为子窗口的MDI 容器.3.<em>设置</em>菜单栏工具栏等控件.假设点击按钮button1的触发事件为<em>打开</em><em>子<em>窗体</em></em>child.cs.二:创建<em>子<em>窗体</em></em>1.添加一个Windows<em>窗体</em>,命名为child.cs.2.<em>设置</em>所需控件.3.在父<em>窗体</em>中双击but
Winform MDI窗体窗体显示区域大小
1、建立一个专门用于获取MDI父<em>窗体</em>展示<em>子<em>窗体</em></em>的区域的大小的空白<em>窗体</em>,在<em>窗体</em>Load时就实例化该<em>窗体</em>,但不show出来。         private void Main_Load(object sender, EventArgs e)         {             MainFormSizeFrm = new MainFormSize();             Main
.net MDI 窗体菜单显示窗体ICON图标,以及合并窗体菜单问题
最近在做项目的时候,发现MDI父<em>窗体</em>的主菜单的左边,当<em>子<em>窗体</em></em>最大化的时候,显示了<em>子<em>窗体</em></em>的图标ICON。以及如果<em>子<em>窗体</em></em>含有菜单的话,<em>子<em>窗体</em></em>的菜单会显示再父<em>窗体</em>上。   在网上搜索了好多文章,最后终于发现了解决方法。 1.菜单合并问题,把菜单中的AllowMerge属性<em>设置</em>为false; 2.显示在<em>窗体</em>ICON问题,如下方法解决:   在主菜单的ItemAdded事件编写如下代码:   priva...
如何实现MDI窗体不重复打开同一个窗体
使用MDI<em>窗体</em>时,默认是可以多次<em>打开</em>同一个<em>子<em>窗体</em></em>的,那么如何控制不重复<em>打开</em>同一个<em>子<em>窗体</em></em>呢?MDI<em>窗体</em>有个重要属性——MdiChildren,该属性表示MDI<em>窗体</em><em>打开</em>的<em>子<em>窗体</em></em>的数组,循环遍历该数组,可以通过判断被<em>打开</em><em>子<em>窗体</em></em>的名称来禁止<em>子<em>窗体</em></em>被重复<em>打开</em>。 例如,下面的代码实现在MDI框架<em>窗体</em>中不重复<em>打开</em>同一个<em>子<em>窗体</em></em>: 01 FormChild formChild = new FormChild(
C#把MDI窗体变为标签页面(不改写任何控件)
先给大家看下最终效果图如下: 这个是用vs2005写的,感觉那个关闭按钮图片支持不是那么好,在vs2008及其以上版里使用,效果更佳。       首先我们先新建一个项目,默认有个Form1<em>窗体</em>,将ShowIcon、ShowInTaskbar属性<em>设置</em>为False,这样这个<em>窗体</em>就没有最大化、最小化按钮,和不显示左上角的图标了。     接着,新建一个MDI父<em>窗体</em>,应该默认会有<em>设置</em>好的菜单
WinForm(C#)中MDI窗体最大化的问题
 “用MDI方式<em>打开</em>一个子窗口体后,总是不能最大化显示,明明子窗口体的WindowState<em>设置</em>为Maximized?”,相信有很多人会遇到这的样问题,请按下面的方法<em>设置</em>即可使MDI<em>子<em>窗体</em></em>最大化: 1、把父<em>窗体</em>的IsMdiContainer<em>设置</em>为True; 2、把<em>子<em>窗体</em></em>的WindowState<em>设置</em>为Normal; 3、在父<em>窗体</em>中用下面的方法<em>打开</em><em>子<em>窗体</em></em>: private void me
C# Winform实现MDI程序窗体与主窗体菜单合并
这里只讲在MDI中,子菜单与父菜单合并的简单方法。   首先在MDI的主<em>窗体</em>中: 1.  在主<em>窗体</em>构造函数中,添加如下代码,注意要在InitializeComponent调用之后,如:             //Add File Menu             MenuItem miFile = mnuMain.MenuItems.Add("&File");
【C#】MDI窗体中,将窗体置于父窗体控件之上的方法
问题 这几天在优化程序的时候发现了一个问题,就是在MDI<em>窗体</em>中的<em>子<em>窗体</em></em>被激活显示出来之后,总是被主<em>窗体</em>中的控件遮挡(各种控件)。解决的方法也试了很多但是都不是很满意,由于C#的WINFROM<em>窗体</em>没有SETPARENT的方法,所以很多东西都需要自己去编写,下面就贴一个至少让我感觉非常不错的方法吧。 解决办法 user32.dll 首先来介绍一下什么是“User32.dll” 欢
C#中MDI窗体的创建方法
C#中去掉了<em>窗体</em>的MDIChild属性,如果要为MDI主<em>窗体</em>添加一个<em>子<em>窗体</em></em>的话,现在要用代码来实现假如新建了一个名为NewForm的<em>窗体</em>来做为<em>子<em>窗体</em></em>,那么要在显示这个<em>窗体</em>的地方加入如下代码:NewForm child=new NewForm();child.MdiParent = this;child.Show(); 个人认为加入这段代码,使得MDIChild的显示变得麻烦了,
DevExpress 使用 XtraTabbedMdiManager 控件以 Tab样式加载 Mdi窗体并合并父和窗体的 RibbonControl 解决方案
最近刚接触到 DevExpress 13.1 这个皮肤组件, 觉得相当好用 于是开始准备搭建 个小应用的主体框架. 找了好久的就是没找到对应的文章来讲解这一块.. 翻了他们主网站上人家问的,以及API 才摸索... 不懂英文好吃力呀~~~   首先选到的就是,依旧用 Mdi<em>子<em>窗体</em></em>模式加载子模块 第一步: 创建一个主 RibbonForm 为: ParentForm    1.1 <em>设置</em> R...
C#MDI打开窗体去掉自动生成的菜单栏
C#在DMI中<em>打开</em><em>子<em>窗体</em></em>时自动生成了菜单栏,怎么去掉菜单栏呢呢? 先在父<em>窗体</em>的加载事件中<em>打开</em><em>子<em>窗体</em></em>并使它最大化 private void MDIParent1_Load(object sender, EventArgs e)         {             firstPage();//<em>打开</em><em>子<em>窗体</em></em>         } <em>打开</em><em>子<em>窗体</em></em>的方法: private
MDI窗体内只显示一个窗体
private void Close_Child()         {             if (this.MdiChildren.Length == 1)             {                 Form child_form = this.ActiveMdiChild;                 child_form.Close();       
解决winform中mdi窗体加载时显示最大化最小化按钮的方法
解决winform中<em>mdi</em><em>子<em>窗体</em></em>加载时显示最大化最小化按钮的方法场景:在mid加载<em>子<em>窗体</em></em>的时候如果指定WindowState为Maximized,加载完成后主<em>窗体</em>会显示最大化、最小化、关闭的按钮图标。解决方法: 1.更改主<em>窗体</em>FormMain的属性。制定MainMenuStrip的属性为menuStrip1控件。menuStrip1控件就是主<em>窗体</em>上的菜单栏。 2.在menuStrip1控件的It
C# Winform MDI窗体,父窗体控件覆盖窗体的解决办法
问题:MDI<em>窗体</em>中,父<em>窗体</em>控件会覆盖<em>子<em>窗体</em></em>,网上很多解决方案表面上解决了问题,但失去了MDI<em>窗体</em>的基本特性,并不实用。比较赞成使用<em>子<em>窗体</em></em>“代替”父<em>窗体</em>控件的方案。思路:不将控件放置在父<em>窗体</em>上,而是放在一个<em>普通</em>的<em>子<em>窗体</em></em>上面,但其基本表现与将控件放在父<em>窗体</em>中一致。 这是表现指: 大小随着主<em>窗体</em>变化,覆盖整个客户区 不能被关闭、最小化等,一直处于填充整个客户区的状态 实现:<em>子<em>窗体</em></em>代码中禁用最大化、最小化
vb.net中MDI窗体对其父窗体属性的获取与修改
vb.net中MDI<em>子<em>窗体</em></em>对其父<em>窗体</em>属性的获取与修改
C#在MDI父窗体菜单中显示窗体列表的设置方法
环境VS2005假设在菜单栏中已有一个菜单项为:窗口(W)。 (其名为:窗口WToolStripMenuItem)点菜单栏空白处,在属性窗口中找到MdiWindowListItem项,选择它的值为窗口WToolStripMenuItem就可以了。文档中会产生如下的代码// menuStrip1……this.menuStrip1.MdiWindowListItem = thi
子窗子显示在MDI主窗体panel控件之上
机房收费系统中,需要将子窗子显示在MDI主<em>窗体</em>panel容器控件之上。查了资料。大概网上有两种方法。一种是是可以将<em>子<em>窗体</em></em>上的控件直接内嵌到panel控件之上,还有一种是子窗子显示在MDI主<em>窗体</em>panel控件之上。 通过这个需求的实现,感觉到知识学习是无穷尽,因为对于panel容器控件,自己也是第一次使用,所以这个知识对于自己而言是新的东西,面对这样无穷尽的新知识的学习,我要学会的站到一个高的位置上去抽象出这些学习这种新知识的方法,自己总结了一下方法: 1.学会去网上查询。 去网上查自己想要的东西,不
C# MDI 窗体被父窗体控件挡住
最近在做一个小工具,发现了一个过去做项目没有遇到的问题:<em>子<em>窗体</em></em>被父<em>窗体</em>的控件给挡住了! 如下图所示: <em>子<em>窗体</em></em>的TopMost 已经设为true,父<em>窗体</em>的控件已经置于底层,但是结果还是很悲观!无奈之下,谷歌了一下,尝试了很
Winform 多MDI窗体关闭时,无法访问已释放的对象对象名:“Icon”
无法访问已释放的对象对象名:“Icon” 在WINFORM开发中,对当<em>打开</em>多个MDI<em>窗体</em>,并且在最大化状态下关闭<em>窗体</em>时,常常出现以下异常:System.ObjectDisposedException:无法访问已释放的对象。 对象名:“Icon”。    在 System.Drawing.Icon.get_Handle()    在 System.Drawing.Icon.get_Size(
MDI窗体(多文档界面)
多文档界面(Multiple-Document Interface),简称MDI<em>窗体</em>。MDI<em>窗体</em>用于同时显示多个文档,每个文档显示在各自的窗口中。MDI<em>窗体</em>中通常有包含子菜单的窗口菜单,用于在窗口或文档之间进行切换。 一、<em>设置</em>MDI<em>窗体</em>         在MDI<em>窗体</em>中,起到容器作用的<em>窗体</em>被称为“父<em>窗体</em>”,可放在父<em>窗体</em>中的其他<em>窗体</em>被称为“<em>子<em>窗体</em></em>”,也称为“MDI<em>子<em>窗体</em></em>”。当MDI应用程序启动时,
c#如何将窗体显示到父窗体的容器(panel)控件中
<em>如何将</em>一个<em>窗体</em>显示到一个容器控件中,刚开始想的比较简单,用<em>窗体</em>容器控件添加一般控件的方法,试了一试,代码如下: Form2 frm = new Form2(); this.panel1.Controls.Add(frm); frm.Show(); 但是提示了一个错误:无法将顶级控件添加到控件。 原来<em>窗体</em>是一个顶
c#开发中,mdi窗体如何调用父窗体中控件
http://hi.baidu.com/ivanbobo/blog/item/63571d1744ea941bc83d6ddd.html在子窗口中声明父窗口对象即可进行调用例如,父窗口为MDIParent1 ,子窗口为MDI 只需在MDI 中,需要调用父窗口的地方声明该对象即可,
DELPHI中MDI子窗口的关闭 和打开
Delphi中MDI子窗口的关闭方式默认为缩小而不是关闭,所以当你单击子窗口右上角的关闭按钮时会发觉该子窗口只是最小化,而不是你预期的那样被关闭。解决办法是在子窗口的OnClose事件处理过程中加入如下代码,示例: procedure ChildForm.OnClose(Sender: TObject; var Action: TCloseAction); begin    Acti
DevExpress窗体风格应用以及MDI窗体风格的应用
[STAThread]static void Main(){    Application.EnableVisualStyles();    DevExpress.UserSkins.OfficeSkins.Register();    DevExpress.Skins.SkinManager.EnableFormSkins();    DevExpress.Skins.SkinManager.E
MDI父窗体窗体之间怎么传值?
主要的思想就是,通过成员变量和
MDI子窗口管理及子窗口创建
此工程是在对MDI管理文档视图有一定了解的基础上写的,可以根据自己的要求管理窗口,并在菜单中加载自己的命令,利用文档模板类管理不同视图
C#WinForm案例_父MDI窗体不重复打开窗体
附件中包含一个C#WinForm中父MDI<em>窗体</em>不重复<em>打开</em><em>子<em>窗体</em></em>的案例,父<em>窗体</em>在<em>打开</em><em>子<em>窗体</em></em>之前先判断<em>子<em>窗体</em></em>是否存在,若存在则激活;若不存在,实例化并<em>打开</em><em>子<em>窗体</em></em>。开发环境:VS2012。
WPF MDI窗体的实现方法
用了一段时间的WPF,居然发现WPF不支持MDI<em>窗体</em>!这么重要的功能微软居然给忽略了? 微软的开发团队解释:因为WPF带来革命性的窗口布局的新特性,所以不希望再看到 the overlapping windows within a window. 但我个人还是觉得MDI能非常直观迅速的表达软件的功能。所以提供了一个解决的办法如下: 第一步. 建一个MainWindow.xaml 的<em>窗体</em>作为
C# 创建MDI窗体
<em>打开</em>VS创建一个WindowsForm程序: 修改<em>窗体</em>属性:找到IsMdiContainer属性改为True即可: 接下来我们在Form1窗口中创建一个按钮,用来<em>打开</em>一个窗口,看看是不是在Form1窗口里面显示的:双击From1<em>窗体</em>在Form1_Load方法里创建一个按钮,并且给按钮注册一个点击事件:(这里使用代码创建)如图: 运行测试:
C#多次单击按钮只能打开一次窗体及创建MDI窗体
我目前做了一个主<em>窗体</em>,里面有个按钮,当点击按钮后弹出另一个<em>子<em>窗体</em></em>;但我把<em>子<em>窗体</em></em>最小化后再点击主<em>窗体</em>上的按钮,又会弹出一个新的<em>子<em>窗体</em></em>。我想问下,该怎样实现 无论点击多少次按钮,都只是显示一个<em>子<em>窗体</em></em>。
锁定MDI窗体的位置
1.this.SetBounds       把StartPosition<em>设置</em>为Manual即可...2.参考下代码来操作(用API):[DllImport("User32.dll")]public static extern int GetSystemMenu(int hWnd, int bRevert);[DllImport("User32.dll")]public static ex
在MDI窗体调用窗体时怎样使不被MDI窗体上的图片挡住
最近大家都在忙着敲机房收费系统,我也一样。前几天发现了一个问题,在点击主<em>窗体</em>上的按钮调用<em>子<em>窗体</em></em>时,<em>子<em>窗体</em></em>不显示。开始时以为是我把<em>子<em>窗体</em></em>的名字敲错了导致无法调用,后来在仔细核对下排除了这种可能。那么为什么和敲学生时一样的步骤现在却出现了这个问题呢?通过在网上查和问同学发现很多同学都遇到了这个问题,也有同学已经解决了。这里就在来说说如何解决,权当强调了吧。 首先出现这个问题是因为我们的MDI
C# MDI窗体最大化后与主窗体不融合解决方法
如果出现下面图示情况: 最大化后: 移动可以遮住菜单栏: 大家要知道,C#已经对<em>子<em>窗体</em></em>最大化后,<em>子<em>窗体</em></em>的标题栏会和父<em>窗体</em>的菜单栏融合。<em>子<em>窗体</em></em>最小化后有个小<em>窗体</em>会紧挨状态栏停靠: 造成这种情况的原因: private void Form1_Load(object sender, EventArgs e)  中加入了如下语句: child.TopL
分享一个我自己的C# UI类库,支持普通窗体及MDI窗体主题自定义
目前类库只有<em>窗体</em>,没有其他控件,但<em>窗体</em>支持MDI。带两个示例程序,一个多标签浏览器,一个可运行时更换主题的<em>普通</em><em>窗体</em>。代码仅用于学习和技术交流之用。
在 MDI 中,窗体如何固定在最前面?
假设2个<em>窗体</em> Form1,Form2(<em>子<em>窗体</em></em>);在Form1点击按钮后显示Form2,Form2中代码如下 Option Explicit Const Hwndx = -1 Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, _    
MDI 激活窗体的方法
最近做一个小应用程序,用到了MDI。以前看到过.NET MDI有发生MemoryLeak的问题, 没想到在.NET 3.5里依然存在。查了下资料,说是在有GridView<em>窗体</em>重画时,容易导致内存泄露。 因此在Show的外面套上了 SuspendLayout 和 ResumeLayout。目前为止还没再发生问题。 特此记录。下面这个方法是在父<em>窗体</em>里调用<em>子<em>窗体</em></em>的方法,还是很通用的。
MDI父窗体中的窗体最大化后消除窗体在父窗体菜单栏中的图标
private void menuStrip1_ItemAdded(object sender, ToolStripItemEventArgs e) {     if (e.Item.Text.Length == 0         //隐藏<em>子<em>窗体</em></em>图标         || e.Item.Text == "最小化(&N)"  //隐藏最小化按钮         || e.Item.Text
[C# Winfrom]MDI窗体最大化
①将MDI<em>子<em>窗体</em></em>的属性WindowState<em>设置</em>为Normal②在父<em>窗体</em>的创建<em>子<em>窗体</em></em>代码处添加代码   <em>子<em>窗体</em></em>名.WindowState = FormWindowState.Maximized;
通过设置窗体透明度,解决C# winform 窗体设置背景图卡的问题
c是<em>子<em>窗体</em></em>,currentSelectedTemplate.BackgroundPic是背景图片路径  绘制完背景,c显示一下就可以了c.Show(); 由于SetStyle(ControlStyles.SupportsTransparentBackColor, true);                     BackColor = Color.FromArgb(50, 50,
利用单例模式操作MDI主窗体与其相关窗体
1、MDI主<em>窗体</em>点击弹出其所属的<em>子<em>窗体</em></em>(MDIMainForm<em>窗体</em>下的代码示例) private void barBtnProjectType_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { //客户代码,只需要管调用,不需要管实现,符合封闭-开放原则
VS2017 .NET C# MDI窗体菜单,隐藏窗体ICON图标
最近在做项目的时候,发现MDI父<em>窗体</em>的主菜单的左边,当<em>子<em>窗体</em></em>最大化的时候,显示了<em>子<em>窗体</em></em>的图标ICON。解决办法,在主菜单的ItemAdded事件编写如下代码:         private void Main_Menu_ItemAdded(object sender, ToolStripIte...
C#:通过反射动态窗体的名字打开MDI窗体,且唯一打开一个
private void showForm(object sender) { //每个Menu字项的名字与Form的名字是有关联的,举个例子 //Menu名字:m_DataShow,Form的名字:m_DataShowForm string formName; formName =(se
机房收费系统-MDI窗体控件不能放置以及窗体不能显示问题
今天在整理机房系统主界面时,发现放置控件一直提示 刚开始一直以为自己把MDI<em>窗体</em>的属性给修改错了才会这样的,然后自己找了找相关资料发现MDI<em>窗体</em>是不能放置无对其属性的控件的。 那么怎么做才能在MDI<em>窗体</em>上放置控件呢? 首先在MDI<em>窗体</em>上添加PICTUREBOX控件 ,然后<em>设置</em>PICTUREBOX的属性。将需要的控件放在PICTUREBOX 上就可以了。但是在放置完控件,整理好界面布局后再运行时发现
MDI 父亲窗体遍历窗体
在MDI开发中遍历子窗口 foreach (Form child in this.MdiChildren) { /****************FormCont是用户已经定义的子窗口****************/ if ("FormCont" == child.Name) { child.Size
MDI窗体标题栏显示在父窗体菜单栏上面
搞了好长时间没解决,最后是因为一句话:
不能打开已经打开窗体,并且始终只能打开一个窗体
在网上查了很多关于“winfrom中关闭所有<em>打开</em><em>子<em>窗体</em></em>代码” 的类似搜索,但似乎都是在说:“不能让其重复<em>打开</em>同一个<em>子<em>窗体</em></em>的代码”,一开始没太留意,以为是不是自己搜索的关键词不对或者是不是就没有这种可能,后来某一天,又开始查这个问题,还是同样的搜索结果,这时我的想法是那我就看看这种做法能不能让我有借鉴的地方呢?于是我就<em>打开</em>看了一下(也是博客园的一篇文章,在此表示感谢),果然受益匪浅,从中找到了问题的
去除MDI窗体最大化时的默认图标
MDI程序中,<em>子<em>窗体</em></em>最大化后,<em>子<em>窗体</em></em>的icon会自动显示在主<em>窗体</em>菜单的左上角。根据<em>子<em>窗体</em></em>Icon<em>设置</em>的不同,默认情况下会出现下面的两种情况,而且这两种情况都让人抓狂: 1 <em>子<em>窗体</em></em><em>设置</em>了自定义的icon,比如下图中<em>子<em>窗体</em></em>的icon<em>设置</em>为“放大镜”图标,主<em>窗体</em>菜单左上角显示“放大镜”图标,乍看好像显示正确,实际不然,如果在最大化状态下,继续显示新的<em>子<em>窗体</em></em>时,则容易出现图2所示的问题,即显示一个丑陋的
WinForm程序如何将窗体嵌入到父窗体的Panel里
现有一个父<em>窗体</em>name是Parent,<em>子<em>窗体</em></em>name是Son,要让Son嵌入在Parent的Panel内,则父<em>窗体</em>的初始加载代码如下:private void Parent_Load(object sender, System.EventArgs e)  {   this.IsMdiContainer=true;//<em>设置</em>父<em>窗体</em>是容器   Son mySon=new Son();//实例化<em>子<em>窗体</em></em>   mySon.MdiParent=thi
窗体菜单合并到父窗体菜单的解决办法
系统中既有父<em>窗体</em>又有<em>子<em>窗体</em></em>,<em>子<em>窗体</em></em>添加下拉菜单,运行时<em>子<em>窗体</em></em>的菜单会合并到父<em>窗体</em>的菜单中,解决办法是,将<em>子<em>窗体</em></em>菜单控件的AllowMerge属性设为false。
C# 窗体在父窗体中显示位置
C#怎么<em>设置</em><em>子<em>窗体</em></em>在主<em>窗体</em>中居中显示 问题的开始是由C#传传看主群里的印醒提出来的,下面我来说一下解决方案吧其实表面上看是很简单的 开始吧,现在有两个<em>窗体</em>Form1主<em>窗体</em>,Form2<em>子<em>窗体</em></em> 而且我相信大部分人都会这样写 在<em>子<em>窗体</em></em>的Load事件中 这样写:this.StartPosition = FormStartPosition.CenterParent;其实这样写是不对的,正确的写法应该
C#winform中,MdiParent中每个子窗口都只能打开一个
之前在开发winform程序的时候,经常做这样的控制:每个form同时只能出现一个。 方法有很多,通常我都采用这种方式:(通过一个public 的static 字段进行控制)  主<em>窗体</em>menu: private void subMenu1ToolStripMenuItem_Click(object sender, EventArgs e)         {
c#的mdi窗口中如何完成子窗口间的切换?
 form1,form2,form3是form0的<em>子<em>窗体</em></em>。 主<em>窗体</em>form0的工具栏toolbar1中有三个按钮Toolbutton1,Toolbutton2,Toolbutton3; 点击Toolbutton1<em>打开</em>form1<em>子<em>窗体</em></em>,点击Toolbutton2<em>打开</em>form2<em>子<em>窗体</em></em>,点击Toolbutton3<em>打开</em>form3<em>子<em>窗体</em></em>; 要加入什么代码,可以实现这样的功能: 当一个<em>子<em>窗体</em></em>已经<em>打开</em>,点击
如何把Ribbon窗体合并到父窗体
如何把Devexpress中的Ribbon<em>子<em>窗体</em></em>合并到父<em>窗体</em>,希望帮助到初学者
C# Winform同一窗体只允许打开一次
最近在写一个小程序,遇到子窗口<em>打开</em>多次的情况,通过查找找到了解决办法,但是有写不尽人意,比如对<em>子<em>窗体</em></em>最小化时的处理。 因此进行了优化得到如下代码,目前测试可能遇到的情况都完美解决,包括<em>子<em>窗体</em></em>最小化: Form f = Application.OpenForms["about"];  //查找是否<em>打开</em>过about<em>窗体</em>  if ((f == null) || (f.IsDisposed)) /
解决Delphi MDI 闪烁问题
解决Delphi MDI 闪烁问题
去除MDI窗体最大化后在MainMenuStrip上自动产生的图标和最大化、最小化等按钮(转)
场景描述: 程序有一个MDI父<em>窗体</em>frmMain,内含一个MenuStrip控件mnMain MDI<em>子<em>窗体</em></em>名为frmTransfer mnMain包含菜单项“运单管理”及其子菜单项“调件运单” 当点击“购件运单”菜单项时,要求自动以最大化的方式显示<em>子<em>窗体</em></em>frmTransfer 编写代码如下: private void miShowTransfer_Click(object sender, EventArgs e) {      frmTransfer ft =
C#-Mdi多文档窗口及其子窗口的排列 ---ShinePans
MdiLayout枚举成员及说明 Casecade s所有Mdi层叠在父窗口 TileHorizontal 水平平铺 TitleVertical 垂直平铺 Form1.cs (<em>mdi</em>) using System; using System.Collections.Generic; using S
vb6如何在任务栏中显MDI窗体的标题(测试)
vb6如何在任务栏中显MDI<em>子<em>窗体</em></em>的标题(测试),需要完整的功能,学习VB高级技术可以联系主人报名。
toolStripContainer在mdi窗体中遮蔽mdi窗体的解决办法
toolStripContainer在父<em>窗体</em>停靠以后会遮蔽<em>mdi</em>的<em>子<em>窗体</em></em>在toolStripContainer.ContentPanel上面放panel,然后pannel<em>设置</em>在父<em>窗体</em>中停靠在show<em>窗体</em>的时候代码如下          frmShowPic fsp = new frmShowPic(); fsp.MdiParent = this;
winform用tabcontrol切换mdi子窗口及为tabcontrol的page添加关闭按钮
利用tabcontrol实现winform子窗口切换,且为tabpage添加关闭
DEV中RibbonForm作为父窗体,同一窗体打开一次
目标:将RibbonForm作为父<em>窗体</em>,通过自身的button单击事件,<em>打开</em><em>子<em>窗体</em></em>Form1和Form2,并限定<em>子<em>窗体</em></em>只能<em>打开</em>一次。   步骤: 1、在VS环境下,文件-新建-项目-windows<em>窗体</em>应用程序,这样默认就创建了一个winform应用程序(这时只包含Form1)。   2、右键点击解决方案(MDI_Form),选择添加-新建项-Windows<em>窗体</em>,这时添加了一个<em>窗体</em>Form...
关于限制窗体在父容器中移动边界的总结(很简单的东西,写给新人)
有时候,我们直接用MDI父<em>窗体</em>+MDI<em>窗体</em>可以方便的构建多文档应用,但在有些时候,我们不选择使用MDI<em>窗体</em>形式, 可能是出于某些限制,比如,你需要在父<em>窗体</em>中使用控件,但老是把新建的<em>子<em>窗体</em></em>给遮住,你选择使用panel对象来装一个窗口,可是因为<em>窗体</em>如果 是有边框的,就会让输入焦点定位不准确,鼠标事件不能正确响应等等,你选择了自定义<em>窗体</em>来做<em>子<em>窗体</em></em>,这个时候,你可能就会考虑到限制<em>子<em>窗体</em></em>在父 容器中如
【VB】MDI窗体显示(机房问题)
机房<em>子<em>窗体</em></em>显示。
c++ builder 子窗口长期前置
【Write by wood 小汤——http://blog.csdn.net/tbwood  转载请说明出处,写下来不容易】 要真正的理解和解决这个问题,确实不容易。当我花了好几天时间才搞明白之后(每天都会纠结新的问题),我真想写一本书。 首先说明下让窗口前置的方法非常多,但现有(2011年1月26号)网上(公开中文论坛资料)的99%(还有1%我是没发现)的回答和论点都是不全面或者错
mdi子窗口在父窗口其他控件之上显示
做个东西用到<em>mdi</em>父子窗口,但是子窗口总是出现在父窗口其他控件的下面,不能显示出来。 通过引用win32 api可以解决。 1, 添加引用using System.Runtime.InteropServices; 2, 定义 [DllImport("User32.dll")]         public static extern IntPtr SetParent(IntPtr hc
完美解决MDI子窗口最大化后标题栏在父窗口菜单栏之上的问题
问题示例:
MDI窗体ICON显示问题
在vs2005多文档设计过程中,被一个小问题给犯难了--MDI<em>子<em>窗体</em></em>显示最大化后主<em>窗体</em>菜单栏左上角的图标显示不正常。一般情况下,只要<em>设置</em>Form的Icon属性就可以了,但在VS2005 .net设计中确不这样。     创建新工程后,新建两个<em>窗体</em>:MainWindow和MdiChildWnd,并且分别这两个构函数中<em>设置</em>Icon属性。在MainWindow中添加一个菜单项newToolStrip
WPF实现类似MDI窗体的功能
在我的上一篇博客中 http://blog.csdn.net/soft2buy/article/details/5479946,提到了用UserControl做为WPF的“MDI<em>子<em>窗体</em></em>”。今天偶然发现 XCeed 开发的Extended WPF Toolkit里面有个ChildWindow<em>窗体</em>可以做为MainWindow的<em>子<em>窗体</em></em>。ChildWindow也是从UserControl继乘的。 先看
.NET C# MDI窗体菜单,隐藏窗体ICON图标
最近在做项目的时候,发现MDI父<em>窗体</em>的主菜单的左边,当<em>子<em>窗体</em></em>最大化的时候,显示了<em>子<em>窗体</em></em>的图标ICON。 解决办法,在主菜单的ItemAdded事件编写如下代码:   1 2 3 4 5 6 7 8 9 10 private void MainMenu_ItemAdded(object sender, ToolStripItemEve
MDI中在父窗体中从一个窗体跳转到另一个另一个窗体
今天在编程的时候,有一个功能是在MDI的父<em>窗体</em>中的一个<em>子<em>窗体</em></em>跳转到另一个<em>子<em>窗体</em></em>时 :编译没有问题但在执行时编译器报:被指定为此<em>窗体</em>的 MdiParent 的<em>窗体</em>不是 MdiContainer。代码是这样写的: (<em>窗体</em>名)XfrmNewAccount    xfrm= new XfrmNewAccount();     xfrm . MdiParent = this  ;   xfrm.show()
Delphi MDI 窗体的创建和销毁 [zhuan]
文章来源: Delphi MDI <em>子<em>窗体</em></em>的创建和销毁 1.如果要创建一个<em>mdi</em> child,先看是否有这个child 存在,如果有,则用它,如果没有再创建 //该函数判断MDI <em>子<em>窗体</em></em>是否存在,再进行创建和显示 function isInclude(formclass: TFormClass): boolean; var   i: Integer;   form: TObjec
MDI无菜单栏隐藏窗体标题栏
c#MDI<em>窗体</em><em>打开</em><em>子<em>窗体</em></em>,一般都会出现<em>子<em>窗体</em></em>的标题栏,一般方法都是合并在MDI菜单栏中,该方法无需借助MDI菜单栏,直接隐藏<em>子<em>窗体</em></em>标题栏
c# 利用 splitcontainer 和treeview 在MDI上面显示窗体 (进阶)
 和上一页不同的是,增加tabcontrol和Activator.CreateInstance(Type),使 界面更加易操作和代码更加简洁。tabcontrol中的tabpage有页面提示信息,可以切换 不同的form。利用Activator.CreateInstance可以动态生成不同的form。关键点在于, 通过treeview的节点名,传递字符串给Activator.Creat
解决DEV皮肤 主窗体窗体皮肤风格不一致问题
在Main()函数中注册: DevExpress.UserSkins.BonusSkins.Register(); DevExpress.UserSkins.OfficeSkins.Register(); DevExpress.Skins.SkinManager.EnableFormSkins();
如何将MDI窗口中的RibbonPage合并到父窗口的Ribbon中
将MDI窗口中的RibbonPage合并到父窗口的Ribbon中
在DockPanel 的窗体打开另一窗体使其停靠在主窗体的方法
1、新建主<em>窗体</em>frmMain,并在其类增加一属性   public DockPanel DockPanel        {            get            {                return this.dockPanel;            }        } 2、增加<em>子<em>窗体</em></em>frmSysMenu,并增加一方法      private Contr
[初学VB.NET]如何防止重复打开MDI窗体
VB.NET中,在访问<em>窗体</em>之前,你必须进行<em>窗体</em>实例化,然后才能<em>打开</em>,如:           Dim frm1 As New Form1           frm1.MdiParent = Me 定义MDI<em>子<em>窗体</em></em>           frm.Show() <em>打开</em><em>窗体</em>如果在项目中有多处代码访问同一<em>窗体</em>,都这样的话,则会创建出不同的实例。如重防止重复<em>打开</em>MDI<em>子<em>窗体</em></em>的实例呢?下面的代码可以帮你
小菜学习Winform(四)MDI窗体(附示例)
前言   在做winfrom项目的时候我们可能会用到嵌套<em>窗体</em>,就是说一个容器中有多个<em>窗体</em>,可以分别管理和应用这些<em>窗体</em>,.net中提供了一种机制就是MDI,可能大家都会用,这边就简单的介绍下。 简单应用   winfrom中怎么用MDI呢,其实只要<em>设置</em><em>窗体</em>的一个属性就可以了:   IsMdiContainer属性<em>设置</em>为true就表示该<em>窗体</em>为MDI<em>窗体</em>,很简单,那我们可以在<em>窗体</em>加载的时候这
winform——winform窗体自适应父窗体大小
private void SubForm_Load(object sender, EventArgs e) { this.WindowState = FormWindowState.Maximized; } 这句代码写在<em>子<em>窗体</em></em>里可以让<em>子<em>窗体</em></em>自适应父<em>窗体</em>大小 ...
C# 父窗体中点击多个窗体不出现重复
我们经常在做Winform项目的时候,会遇到父<em>窗体</em>下面有几个<em>子<em>窗体</em></em>,当几个<em>子<em>窗体</em></em>轮番点击的时候或许没有问题,看着好像还可以,但把父<em>窗体</em>放大或者缩小就会发现这个<em>子<em>窗体</em></em>全都弹出来了,这是为什么呢?因为正常情况下你觉得没有问题是因为你点击新的<em>子<em>窗体</em></em>把原先的<em>子<em>窗体</em></em>覆盖了而已,如果一个项目中出现很多个<em>子<em>窗体</em></em>,你觉得你会不会傻掉,项目最后客户看到这种情况是不认同的。 那该怎么办呢? 加入我们要做如下的:
Winform 继承窗体关系,基窗体监控窗体的关闭事件
在业务上面有一种需求,同一个<em>窗体</em>只能同时<em>打开</em>一个,如果这个关闭,才能<em>打开</em>另一个。我的做法是在<em>打开</em><em>窗体</em>的时候把本<em>窗体</em>的Name添加到静态List中,然后本<em>窗体</em>关闭的时候,在从List中移除。这样在<em>窗体</em><em>打开</em>第二次的时候,就会根据List中是存在而判断。<em>窗体</em><em>打开</em>的时候,因为都在Main<em>窗体</em>中,所以可以很容易取到<em>窗体</em>的Name,那么关闭呢。每一个<em>窗体</em>都有自己的两个关闭事件,一个是FormClosing,一...
WinForm窗体嵌入到父窗体的Panel里
现有一个父<em>窗体</em>name是Parent,<em>子<em>窗体</em></em>name是Son,要让Son嵌入在Parent的Panel内,则父<em>窗体</em>的初始加载代码如下: private void Parent_Load(object sender, System.EventArgs e)   {    this.IsMdiContainer=true;//<em>设置</em>父<em>窗体</em>是容器    Son mySon=new Son();//
VC#中,自定义控件-MDI窗体-MDI父窗体的三层引用
  问题描述 1,工程是一个MDI<em>窗体</em>,父<em>窗体</em>中有多个MDI<em>子<em>窗体</em></em>和工具栏菜单 2,有一个自定义控件,是属于MDI<em>子<em>窗体</em></em>的,比如说这个MDI<em>子<em>窗体</em></em>叫A,这个自定义控件叫a 3,想在a中调用MDI父<em>窗体</em>的一个菜单按钮事件 以上是我遇到的问题,最后给出解决方案共享方案如下:1添加一个全局的属性 ,也就是在A上(<em>mdi</em><em>窗体</em>) MDIParent <em>mdi</em>Frame = null;publi
C#WinForm窗体内Panel容器中嵌入窗体、程序主窗体设计例子
C#WinForm父级<em>窗体</em>内Panel容器中嵌入<em>子<em>窗体</em></em>、程序主<em>窗体</em>设计例子在项目开发中经常遇到父级<em>窗体</em>嵌入<em>子<em>窗体</em></em>所以写了一个例子程序,顺便大概划分了下界面模块和配色,不足之处还望指点主<em>窗体</em><em>窗体</em>采用前面一篇博客设计扁平化<em>窗体</em> C#自定义Winform无边框<em>窗体</em>主要思路1 this.IsMdiContainer=true;//<em>设置</em>父<em>窗体</em>是容器 2 Son mySon=new Son();//实例化子窗...
C#----对窗体进行层叠排列
欢迎大家提出意见,一起讨论! 转载请标明是引用于 http://blog.csdn.net/chenyujing1234 代码(VS2008): http://www.rayfile.com/zh-cn/files/f4235a26-9aa8-11e1-bd9f-0015c55db73d/ 关键技术 主要通过LayoutMdi传递MdiLayout.Cascade枚举值来实现<em>子<em>窗体</em></em>的
MDI 窗体 最大化 无最大化最小化按钮 和无关闭按钮
MDI的<em>子<em>窗体</em></em>如何才能去掉最大化最小化和关闭按钮,同时在主<em>窗体</em>加载<em>子<em>窗体</em></em>时<em>子<em>窗体</em></em>最大化呢? 1、将<em>子<em>窗体</em></em>的 ControlBox属性设为false2、将<em>子<em>窗体</em></em>的showICon属性设为false3 、调用如下 FrmProduct frm = new FrmProduct();
C#学习笔记——MDI窗体(多文档界面)
1、<em>设置</em>父<em>窗体</em>: 如果要将某个<em>窗体</em><em>设置</em>为父<em>窗体</em>,只需将该<em>窗体</em>的IsMdiContainer属性<em>设置</em>为True即可。 2、<em>设置</em><em>子<em>窗体</em></em>: 通过设为某个<em>窗体</em>的MdiParent属性来确定该<em>窗体</em>是那个<em>窗体</em>的<em>子<em>窗体</em></em>。 语法如下: 1: public Form MdiParent{get;set;} 3、排列MDI<em>子<em>窗体</em></em>: 语法如下: 1: pu
文章热词 像处理颜色设置 机器学习 机器学习课程 机器学习教程 深度学习视频教程
相关热词 mdi子窗体美化c# c# mdi窗体 c#设计mdi窗体 c# 设置窗体为激活 乌班图终端打开python python教程打开网页
我们是很有底线的