【NCRE】——Winform窗体控件随窗体大小而变化

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013086062/article/details/50297621
【背景】
        计算机一级考试项目在测试的时候,用户提了一个需求是让窗体上的控件随着窗体的大小而变化

【解决方案】
使用 Anchor 属性可以控制界面的布局,Anchor 属性定义在调整窗体的大小时自动调整控件的大小

【具体实现】

 

        在winfrom窗体找到需要控制的控件,选择.Anchor属性,默认的属性是选择TOP和Left,如下图,其中,灰色部分代表已经选中。根据自己的需要选择Anchor选择对应的属性。小编测试的时候添加的是一个button和一个textbox,其中button相对于底边和右边固定,textbox相对于整个窗体不动。

1、Anchor属性:


Top——表示控件中与父窗体(或父控件)相关的顶部应该保持固定。

Bottom——表示控件中与父窗体(或父控件)相关的底边应该保持固定。

Left——表示控件中与父窗体(或父控件)相关的左边缘应该保持固定。

Right——表示控件中与父窗体(或父控件)相关的右边缘应该保持固定。

2、效果图


       在实现的时候还考虑了另一个属性:Dock,它和Anchor属性的不同点是Dock属性是和窗体是紧贴窗体的某个边缘。

3、Dock属性
        ·Top——迫使控件位于父窗体(或控件)的顶部。如果有同一个父窗体的其它子控件也被设置为停驻在顶部的话,那么控件将在彼此上方相互堆叠。

        ·Bottom——迫使控件位于父窗体(或控件)的底部。如果有同一个父窗体的其它子控件也被设置为停驻在底部的话,那么控件将在彼此上方相互堆叠。

        ·Left——迫使控件位于父窗体(或控件)的左边。如果有同一个父窗体的其它子控件也被设置为停驻在左边的话,那么控件将在彼此旁边相互堆叠。

       ·Right——迫使控件位于父窗体(或控件)的右边。如果有同一个父窗体的其它子控件也被设置为停驻在右边的话,那么控件将在彼此旁边相互堆叠。

       ·Fill——迫使控件位于父窗体(或控件)的上方。如果有同一个父窗体的其它子控件也被设置为停驻在上方的话,那么控件将在彼此上方相互堆叠。

      ·None——表示控件将会正常运转。

【总结】
1、换种考虑方式。一条路走不通的时候,及时找到另外一条路。之前想如何做的时候打算弄个timer,定时判断窗体的大小是否发生变化,这样反应不及时而且消耗资源。

2、思考为什么这些用户体验度上的问题自己没有考虑?过度依赖老师们给的软件,被他们的软件所“引导”;更多的是功能实现上的思考,忽略了最为重要的用户体验,以开发者的思维去开发软件,这是大忌!
————————————————
版权声明:本文为CSDN博主「陈晓婵」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/chenxiaochan/article/details/50297621

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

香煎三文鱼

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值