5 个解决方案
#1
在子窗体里面定义一个事件委托,父窗体里面订阅该委托,当子窗体关闭的时候触发该事件。
#2
关闭时委托操作父窗体的菜单
#3
父窗体打开子窗体A前,在主窗体代码中指定下处理窗体A关闭事件的处理方法fromA_FormClosed,具体操作在fromA_FormClosed中进行即可
formA.FormClosed += new FormClosedEventHandler(fromA_FormClosed);
#4
窗体间通信问题!给出个例子,运行调试下你就清楚叻!
Form2中先定义一个delegate
public delegate void returnvalue( int i );
public returnvalue ReturnValue;
form2 中的button按钮代码如下:
private void button1_Click(object sender, System.EventArgs e)
{
if ( ReturnValue != null )
ReturnValue( 8 );
}
Form1中的button按键如下:
private void button1_Click(object sender, System.EventArgs e)
{
Form2 temp = new Form2( );
temp.ReturnValue = new temp.Form2.returnvalue( showvalue );
temp.Show();
}
private void showvalue( int i )
{
textBox1.Text = i.ToString();
}
点击form2的button,form1中的textbox中的值就会相应变化。
#5
这儿想法不错
#1
在子窗体里面定义一个事件委托,父窗体里面订阅该委托,当子窗体关闭的时候触发该事件。
#2
关闭时委托操作父窗体的菜单
#3
父窗体打开子窗体A前,在主窗体代码中指定下处理窗体A关闭事件的处理方法fromA_FormClosed,具体操作在fromA_FormClosed中进行即可
formA.FormClosed += new FormClosedEventHandler(fromA_FormClosed);
#4
窗体间通信问题!给出个例子,运行调试下你就清楚叻!
Form2中先定义一个delegate
public delegate void returnvalue( int i );
public returnvalue ReturnValue;
form2 中的button按钮代码如下:
private void button1_Click(object sender, System.EventArgs e)
{
if ( ReturnValue != null )
ReturnValue( 8 );
}
Form1中的button按键如下:
private void button1_Click(object sender, System.EventArgs e)
{
Form2 temp = new Form2( );
temp.ReturnValue = new temp.Form2.returnvalue( showvalue );
temp.Show();
}
private void showvalue( int i )
{
textBox1.Text = i.ToString();
}
点击form2的button,form1中的textbox中的值就会相应变化。
#5
这儿想法不错