是否有有效的方法来按类型过滤 Panel 的子控件,例如Label
属性,例如标签
值?
例如我有一个面板 1:
label1.Tag=1;
label2.Tag=1;
label3.Tag=2;
label4.Tag=3;
textBox1.Tag=1;
panel1.Add(controls above);
我想获取集合中的所有标签,或者所有带有Tag=1
的控件,或者在语句之间使用and
。
最佳答案
您可以使用 OfType
扩展方法过滤特定类型的所有控件:
var labelControls = panel.Controls.OfType<Label>();
然后如果你想添加额外的过滤(例如基于标签):
var filteredLabelControls = labelControls.Where(l => l.Tag == (object)1);
关于c# - 使用 C# 按类型和属性值筛选控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17316881/