【发布时间】:2016-03-26 15:34:53
【问题描述】:
我制作了一个程序,其中包含很多控件。控件将根据用户的选择显示和隐藏。这意味着控件在设计时相互重叠。现在我想在设计时更改所有控件的前景色和背景色。但是我很难完成这项任务,因为所有的控制都相互重叠。所以我决定做一个for循环的方法来迭代表单中的控件,然后依次检查每个控件是否有控件。当控件中也有控件时,我调用相同的方法并将控件传递给它以更改子控件的属性。方法如下:
void setColor(ref Control con)
{
con.BackColor= System.Drawing.Color.Black;
con.ForeColor=System.Drawing.Color.Yellow;
if (con.Controls.Count > 0) { setColor(ref con); }
}
所以我的表单包含带有多个 tabPages 的 tabControl。我迭代 tabPages 并想将其传递给此方法,但出现错误“索引器可能不会作为 out 或 ref 参数传递”
我是这样通过的:setColor(ref tabControl1.Controls[i]);
你能帮我解决这个问题吗?
【问题讨论】:
标签: methods properties controls ref indexer