今天给大家上一道硬菜。本来不爱鸡汤,今天说两句:winform开发有一个缺陷就是不能实现界面的自适应,切换不同的分辨率,或者窗体大小改变就会出现窗体显示不全的问题。这就需要自己写一个方法来实现不同情况下的自适应,WPF比Winform的一个显著优势就是可以实现自适应。今天给大家一个可以实现自适应的方案。(本篇博客代码,为本人,在本地调试通过后,手敲到博客中,难免出现敲错的状况,勿喷。代码里面的注释是比较清楚的)
效果图:

调整大小后

新建一个AutoSizeFormClass.cs文件
class AutoSizeFormClass
{
//1.声明一个结构体,记录窗体和控件的基本属性
public struct controlRect
{
public string Name;
public int Left;
public int Top;
public int Width;
public int Height;
public float FontSize;
public FontFamily FontFamily;
}
//2.声明一个集合记录所有控件的属性
//使用控件的Name作为key
Dictionary<string,controlRect> dic=new Dictionary<string,controlR

本文介绍了一种解决WinForm界面自适应问题的方法,通过记录控件初始状态并按比例缩放,实现不同分辨率下的界面适配。适用于需要跨平台部署的应用。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



