C#跨窗体操作

C# WinForm编程中,你是否遇到过这样的问题,在主窗口Form1中点击按钮,弹出一个子窗口Form2,你希望在Form2中调用Form1的函数,改变Form1的显示,却发现Form1不听话,达不到预期效果。有的人说我调试了的,那段函数确实执行了,怎么还是没有显示呢?

案例1:
在winform中,我在点击from1的一个按钮,弹出from3执行一个函数,其实form3就是弹出一个自制的密码输入框但是呢。然后我再from3中调用     if (password == PassWord)             {                 comfirm = true;                 form1.updateMac(row, col);                 this.Close();            } 在updateMac(row,col)中我有个dataGridView1.Rows[row].Cells[col].Style.BackColor = Color.Green;但是颜色死活不变,特别奇怪,放在form1的其他函数里就能变,就是凡在这个form3调用form1的函数里,不能变色,是为什么啊
案例2:
有三个窗体然后顺序分别是
(1)点击第一个窗体中的按钮弹出第二个窗体,隐藏第一个窗体
(2)第二个窗体到一定时间弹出第三个窗体
(3)点击第三个窗体的按钮关闭第三个和第二个窗体,弹出第一个窗体

 

你可能感兴趣的:(C#)