在打开表单之前设置所有标签字体
本文关键字:标签 字体 设置 表单 | 更新日期: 2023-09-27 18:29:21
在打开表单之前,我使用以下代码检查其标签是否更改了字体
foreach (Label ctl in frm.Controls)
{
ctl.Font = usefontgrid;
}
但在第一行返回错误,因为它检查了其他控件类型,如文本框或按钮等。
如何检查对象是否只是标签,然后转到每个标签?
试试这个;
foreach (Control c in this.Controls)
{
if (c is Label)
c.Font = usefontgrid;
}
或
foreach (var c in this.Controls.OfType<Label>())
{
c.Font = usefontgrid;
}
不清楚您将此代码放在哪里(应该在初始化组件之后),但请尝试
foreach (Label ctl in frm.Controls.OfType<Label>())
{
ctl.Font = usefontgrid;
}
还有下面的林克做同样的事情
foreach (Label ctl in frm.Controls.Where(x => x is Label))
试试这个。
foreach (Control ctl in frm.Controls)
{
if(ctl.GetType()==typeof(Label)){
ctl.Font = usefontgrid;
}
}
- frm.controls将提供所有控制
- 您需要检查控件是否为Label类型