C#设置子窗体在主窗体中居中显示解决方案
来源:互联网 发布:数据库开发前景知乎 编辑:程序博客网 时间:2024/05/02 04:42
问题的开始是由C#传传看主群里的印醒提出来的,下面我来说一下解决方案吧
其实表面上看是很简单的
开始吧,现在有两个窗体Form1主窗体,Form2子窗体
而且我相信大部分人都会这样写
在子窗体的Load事件中
这样写
this.StartPosition = FormStartPosition.CenterParent;
其实这样写是不对的,正确的写法应该是
this.StartPosition = FormStartPosition.CenterScreen;
为什么是CenterScreen而不是CenterParent呢?
那是因为我们调用的方法的问题,如果你在调用子窗体时是这样写的话
Form2 f2 = new Form2();
f2.MdiParent= this;
f2.Show();
那就得使用CenterScreen而不是CenterParent了,因为在Show的时候窗体是Owner页不是Parent
只要使用ShowDialog()方法时使用CenterParent才有效
大家会说这样就行了吗?其实也不行,我们的代码不应该写在Load事件中,而是在Show方法之前写。
正确的写法应该是这样的
Form2 f2 = new Form2();
f2.MdiParent= this;
f2.StartPosition = FormStartPosition.CenterScreen;
f2.Show();
在子窗体中你什么也不需要做
再提供一个布局的其实属性
StartPosition属性有如下选项,分别含义如下:
CenterParent 窗体在其父窗体中居中。
CenterScreen 窗体在当前显示窗口中居中,其尺寸在窗体大小中指定。
Manual 窗体的位置由 Location 属性确定。
WindowsDefaultBounds 窗体定位在 Windows 默认位置,其边界也由 Windows 默认决定。
WindowsDefaultLocation窗体定位在 Windows 默认位置,其尺寸在窗体大小中指定。
CenterScreen的意思并不是屏幕居中(是相对的),它是在"当前显示窗口"中居中。
其实表面上看是很简单的
开始吧,现在有两个窗体Form1主窗体,Form2子窗体
而且我相信大部分人都会这样写
在子窗体的Load事件中
这样写
复制代码 代码如下:
this.StartPosition = FormStartPosition.CenterParent;
其实这样写是不对的,正确的写法应该是
复制代码 代码如下:
this.StartPosition = FormStartPosition.CenterScreen;
为什么是CenterScreen而不是CenterParent呢?
那是因为我们调用的方法的问题,如果你在调用子窗体时是这样写的话
复制代码 代码如下:
Form2 f2 = new Form2();
f2.MdiParent= this;
f2.Show();
那就得使用CenterScreen而不是CenterParent了,因为在Show的时候窗体是Owner页不是Parent
只要使用ShowDialog()方法时使用CenterParent才有效
大家会说这样就行了吗?其实也不行,我们的代码不应该写在Load事件中,而是在Show方法之前写。
正确的写法应该是这样的
复制代码 代码如下:
Form2 f2 = new Form2();
f2.MdiParent= this;
f2.StartPosition = FormStartPosition.CenterScreen;
f2.Show();
在子窗体中你什么也不需要做
再提供一个布局的其实属性
StartPosition属性有如下选项,分别含义如下:
CenterParent 窗体在其父窗体中居中。
CenterScreen 窗体在当前显示窗口中居中,其尺寸在窗体大小中指定。
Manual 窗体的位置由 Location 属性确定。
WindowsDefaultBounds 窗体定位在 Windows 默认位置,其边界也由 Windows 默认决定。
WindowsDefaultLocation窗体定位在 Windows 默认位置,其尺寸在窗体大小中指定。
CenterScreen的意思并不是屏幕居中(是相对的),它是在"当前显示窗口"中居中。
0 0
- C#设置子窗体在主窗体中居中显示解决方案
- C#设置子窗体在主窗体中居中显示解决方案
- C#怎么设置子窗体在主窗体中居中
- C#怎么设置子窗体在主窗体中居中显示
- C#怎么设置子窗体在主窗体中居中显示
- c#设置窗体在显示器居中显示
- c#设置窗体在显示器居中显示
- MDI子窗体在父窗体中居中显示的设置
- C#在MDI父窗体菜单中显示子窗体列表的设置方法
- C#在MDI父窗体菜单中显示子窗体列表的设置方法
- C# 子窗体在父窗体中显示位置
- C#中如何控制子窗体只在主窗体中显示一次?
- c# 设置窗体初始化为居中显示
- 使用treeView在主窗体中显示子窗体
- 子窗体在父窗体居中
- C# Winform 左侧菜单右边显示、子窗体显示在主窗体(子窗体当控件添加到Panel)
- C# Winform 左侧菜单右边显示、子窗体显示在主窗体(子窗体当控件添加到Panel)
- C#中如何处理子窗体在父窗体中显示的位置
- 黑马程序员——Java中IO流笔记(下)
- 给Android的LinearLayout添加点击事件
- iOS开发——CoreBluetooth蓝牙开发(三)
- 字符串右移函数
- 记一次理想浪漫的毕旅
- C#设置子窗体在主窗体中居中显示解决方案
- struts2 json includeProperties返回list为空
- Android横向滑动选项卡
- Python 3.5 终于将 Type Hint(类型提示)官方化
- exec 函数族 --多进程编程
- 定义一个Block
- Zxing在CameraManager.get().closeDriver()报错
- PHP本地实现虚拟域名访问:Apache虚拟主机配置
- leetcode解题报告228——Summary Ranges