在设计winform窗体时,因为会很少去调整窗体的大小,这时子控件就会出很尴尬的情况,

通过查看空间的属性,发现有这样两个属性,dock和anchor。这里主要说anchor,官方

解释没太看懂,我的理解是设置那个边框与窗体的固定距离不变,它给出的值是标志枚举,

所以可以通过或(|)运算来同时设置多个值,如果设置上下左右都固定不变,则不管窗体怎

么变,子容器都能适应。这里就像是移动web的设置,通过百分比来的设置控件的大小,那

么子容器就会跟随父容器的变化而相对变化。

initPicBox.Anchor = AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right | AnchorStyles.Top;

dock设置的是停靠,给出的值是普通枚举,所以只能同时拥有一

中值,若同级容器设置了相同是属性,则会互相堆叠。

initPicBox.Dock = DockStyle.Top;

我这里同时还用到了PictrueBox控件,其中也有相关的设置,因为图片的大小不一定符合

PictureBox的大小,所以要进行设置,这里主要介绍使图片填充完PictureVBox。

这里有两个可选项,zoom和strecthImage

initPicBox.SizeMode = PictureBoxSizeMode.Zoom;//以图片原来的长宽比缩放

由图可知:

设置为Zoom时,图片按比例放大到PictureBox相对较小的的边就停止放大或缩小。

并将次作为显示图片的大小。

initPicBox.SizeMode = PictureBoxSizeMode.Zoom;//以PictureBox的长宽比缩放,

也就是填满PictureBox不会让源图片的信息减少。只是可能会改变原来的长宽比值。

winform子容器随父容器的变化设置的更多相关文章

  1. 子元素浮动父容器高度不能自适应的CSS解决方法

    百度标题:子元素浮动父容器高度不能自适应的CSS解决方法 从第二份工作开始,已经不怎么写样式了,然后就忘记了一部分,有的也生疏了. 今天碰到子元素意外挤到一起的问题,就问公司前端工程师是怎么回事,F1 ...

  2. Winform子窗体刷新父窗体

    调用窗体(父):Form1,被调用窗体(子):Form2方法1:   所有权法//Form1://需要有一个公共的刷新方法public   void   Refresh_Method(){//...} ...

  3. winform子窗口调用父窗口的控件及方法-一般调用

    首先新建一个窗体应用程序,在项目属性中点击右键->添加->添加新项,选择Windows窗体->添加. 在Form1和Form2窗口中各添加一个按钮,并双击添加事件处理函数:     ...

  4. c# winform 子窗体访问父窗体中的方法和变量

    今天的工作中突然用到这个了,不过以前没有接触过呢!不过,在有经验的同事的帮助下,这个问题也很快解决了.具体可以分为以下几种方式: 1.在父窗体中构造子窗体对象时,将父窗体传递过去: 如:FrmSub ...

  5. winform 子窗体调用父窗体中的方法

    在父窗体里定义委托 public delegate void inis(string str); 在父窗体中定义要调用的方法 public void inigs(string gs) { textBo ...

  6. winform 子窗体刷新父窗体的数据

    建一个接口 比如 iMainForm接口内声明个方法 比如 Refresh()主窗体 实现这个接口 主窗体打开子窗体时这样写 子窗体.Owner = this;子窗体.ShowDialog(); -- ...

  7. WinForm 子窗体在父窗体范围内移动,不能出父窗体 摘自于网络

    详细解释:1, 主窗体Form1属性IsMdiContainer设为True,并添加ToolStrip控件, Toolstrip中添加一个按钮toolStripButton1.         2,添 ...

  8. 关于Spring父容器和SpringMvc子容器

    在SSM项目中,会有SpringMvc容器(子容器)和Spring容器(父容器) 一共2个容器 基本规则: 子容器可以访问父容器的bean,父容器不能访问子容器的bean. 当<context: ...

  9. Spring父容器与子容器

    在使用spring+springMVC的web工程中,我们一般会在web.xml中做如下配置: <context-param> <param-name>contextConfi ...

随机推荐

  1. 【基础练习】【线性DP】codevs1576 最长严格上升子序列题解

    连题目都不放了,就是标题中说的那样.裸题 于是直接上代码 暑假要来了 好好学习 --炉火照天地,红星乱紫烟. 赧郎明月夜.歌曲动寒川.

  2. 学习鸟哥的Linux私房菜笔记(8)——文件查找与文件管理2

    四.压缩 gzip, gunzip Linux标准压缩工具 对文本文件可以达到75%的压缩率 compress, uncompress 旧的Unix压缩工具 bzip2, bunzip2 更新的Lin ...

  3. 【ORACLE】spfile失落的处理

    ************************************************************************ ****原文:blog.csdn.net/clark_ ...

  4. Ruby开发环境

    Windows上Ruby开发环境的配置   最近公司项目上有需要,需要开发一个puppet的自动化工具,这个工具需要操作存储设备上的各种资源,而鉴于puppet不是善于完成这个任务的首选语言,于是我们 ...

  5. VS Code插件之Cordova Tools

    原文:VS Code插件之Cordova Tools 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011127019/article/detai ...

  6. 微信公众平台开发(1) 通用的工具类CommonUtil

    1.通用的调用微信的方法 /** * * @param requestUrl 接口地址 * @param requestMethod 请求方法:POST.GET... * @param output ...

  7. 在web应用程序中在网页中对Web.config文件进行数据连接配置

    using System; using System.Collections.Generic; using System.Configuration; using System.Web.Configu ...

  8. Xcode7.1 网络请求报错

    The resource could not be loaded because the App Transport Security policy reguir 原因:iOS9引入了新特性App T ...

  9. Delphi Bpl包学习

    对于BPL包,我个人理解是:就是一种封装方式,和DLL,EXE类似,把代码放到包(package)里面保存而已. 一.先说说如何创建BPL包 1.   打开delphi IDE(delphi7 为例) ...

  10. DELPHI +ClientDataSet+DBGRIDEH 进行排序

    DELPHI +ClientDataSet+DBGRIDEH  进行排序因为使用了DBX+ClientDataSet,所以排序显得简单些,只需要设定几个属性就OK了.1.DbGridEH 中设定:Op ...