我有一个应用程序需要适应不同屏幕尺寸(分辨率)的范围。 大部分我使用表格布局面板完成。更改应用程序中所有控件的字体大小(获胜窗体)
但是一些控件(主要是按钮和标签)的字体太大,文本不适合控件。 到目前为止,我已经设法改变一些控件的字体采用
if (Screen.PrimaryScreen.Bounds.Width < 1440)
{
button_5.Font = new Font("Impact", button_5.Font.Size - 4);
}
但是,这是太多的文字添加应用程序中的每一个控制。
有没有办法一次更改应用程序上所有控件的字体? 或者至少是表单上的所有控件?
每窗体是一个控件容器,其中的控件属性列出了该窗体上的所有控件。当一个控件本身就是一个控件容器(面板,groupbox)时,它具有一个Controls集合以及由该容器托管的控件。这是相对容易的建立一个递归函数,循环你的表格的所有控制 – Steve
你可能给我一个这样的功能的例子,所以我可以建立我所需要的? – Martynas
我设法使用 foreach(控制Ctrl在tableLayoutPanel1.Controls中) ctrl.Font = new Font(“Impact”,ctrl.Font.Size - 4); } 但不知道如何访问整个窗体的所有控件呢。 – Martynas