思路:
1.先在父窗口写好改变控件的方法,并设置方法为Public方便子窗口调用
2.在创建子窗口时传入父窗口,并在子窗口处用变量存储。之后在下面调用父窗口的方法即可。
父窗口代码参考:
MiniForm mini = new MiniForm(this);//传入父窗口,this代表本窗口
mini.Show();//打开子窗口
需要子窗口调用的控制控件的代码:
public void BtnStopChangeColor()//这里是改变按钮和panel的颜色
{
BtnStar.BackColor = Color.FromArgb(51, 51, 76);//UI颜色改变
panel3.BackColor = Color.FromArgb(0, 150, 136);
}
子窗口代码参考:
static Form ClientFormSet;//定义一个静态窗口变量去存储主窗口,方便调用
public MiniForm(CloudVspd mainform)//接收主窗口类型的参数
{
InitializeComponent();
ClientFormSet = mainform;//接收主窗口
}
接下来就想要在某一步调用主窗口时,即可使用刚才存储过主窗口的变量即可:
(ClientFormSet as CloudVspd).BtnStopChangeColor();//调用,此时主窗口方法就会被执行,主窗口控件发生变化
(ClientFormSet as CloudVspd).Visible=true;//也可以控制主窗口的显示或隐藏,只要设置为false就是隐藏