winform 自定义控件_adratator控件

winform 自定义控件_adratator控件有很多时候,开发winform,系统给的控件往往不能满足需求,所以,

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

有很多时候,开发winform,系统给的控件往往不能满足需求。所以,我们需要自己的写自己的控件来使用。下面通过具体的例子来讲解,怎么通过继承控件来写出适用自己的控件。

自定义fowllowpanel控件:

在实现动态布局的时候,很多时候需要生成一个控件自动的排列在上一个控件之下,这个时候我们就可以通过继承panel容器来实现。

代码如下:

class PcFollowPanel:Panel
    {

        //控件间隔
        protected int controlSpace;

        public PcFollowPanel()
        {

        }

        public PcFollowPanel(int controlSpace)
        {

            this.controlSpace = controlSpace;
        }

        /// <summary>
        /// 计算控件中子控件宽度,不包括最后一个控件的下面的空格
        /// </summary>
        /// <returns></returns>
        public int GetChildsWidth()
        {

            int width = 0;
            foreach (Control c in this.Controls)
            {

                if (width < c.Width)
                {

                    width = c.Width;
                }
            }
            return width;
            
        }

        /// <summary>
        /// 计算控件中子控件长度,不包括最后一个控件的下面的空格
        /// </summary>
        /// <returns></returns>
        public int GetChildsLenth()
        {

            int lenth = 0;
            foreach (Control c in this.Controls)
            {

                lenth = lenth + c.Height + controlSpace;
            }
            return lenth;
        }

        /// <summary>
        /// 添加控件,自动排列
        /// </summary>
        /// <param name=”c”></param>
        public void AddControl(Control c)
        {

            c.Location = new Point(0, GetChildsLenth() + controlSpace);
            this.Controls.Add(c);
            this.Size = new Size(GetChildsWidth(), GetChildsLenth());
        }

    }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/179638.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Tomcat 的类加载机制

    Tomcat 的类加载机制Tomcat实际上只有WebAppClassLoader加载器中打破了双亲委派,其他类加载器还是遵循双亲委派的。这样做最主要原因是保证同个Web容器中的不同Web应用程序所使用的类库相互独立,避免相互影响

  • 手机NFC模拟M1门禁卡、写CUID白卡的一些研究记录

    手机NFC模拟M1门禁卡、写CUID白卡的一些研究记录一、需求场景近来小区安装了智能门禁,但只配发了一张门禁卡,不方便使用,于是产生了用手机模拟门禁卡,或者复制一张门禁卡的想法。本文使用的软件:(CSDN无法修改下载积分了。。。)包括手机NFC读写卡神器MifareClassicTool(MCT)2.2.5最新版、手机读卡工具NFCTagInfo、NFC卡模拟软件Cardemulator、RE管理器,以及一款NFC模拟…

  • wifi linux驱动_嵌入式系统Android移植

    wifi linux驱动_嵌入式系统Android移植背景:需要更换wifi厂家提供的驱动程序,此驱动不是insmod测试程序,而是需要编译进内核,开机自动挂载的。insmod挂载驱动通常是将驱动源码,使用对应的交叉编译工具链编为xx.ko的文件,手动insmodxx.ko进行使用。1:将驱动源码放入内核目录下的/drivers/net/wireless/realtek目录。2:查看驱动源码目录下的Kconfig和Makefile是否齐全,…

  • 中国十佳IT外包企业排行榜「建议收藏」

    中国十佳IT外包企业排行榜「建议收藏」“东软”集团股份有限公司在众多外包厂商还在为利润率达到15%而挣扎时,东软早已轻松迈上了20%的利润率大关。从甲方转向乙方的背景,A股的融资渠道,多年的本土运营关系,都成为助推东软快速成长的有力因素。东软是中国最大的离岸软件外包提供商。作为一家以软件技术为核心的公司,东软通过开放式创新、卓越运营管理、人力资源发展等战略的实施,全面构造公司的核心竞争力,创造客户和社会的价值,从而实现技术的价值。东软…

  • Eclipse代码的自动补全

    Eclipse代码的自动补全打开eclipse依次点击Window–>Perferences–>Java–>Editor–>ContentAssist在【AutoactivationtriggersforJava:】选项后的文本框中会看到一个”.”。eclipse默认只有在你输入”.”之后才会有代码提示和自动补全。我们需要在”.”之后加上”qwertyuiopasdfghjklzxcvbnm”,其实就是从左至右,从上至下顺序按你的键盘。…

  • 161018–NOIP模拟

    161018–NOIP模拟

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号