想请教各位高手:如何使用委托修改窗体间的属性(我会用别的方法实现,现在就想掌握委托方法)
在Form1中使得点击button1后,弹出form2,并且button1.enabled=false;怎么样在关闭Form2时候,使得Button1的Enabled变为true;{高手最好能给源代码解释}
如果您有时间,可以用通俗易懂的话或者例子讲解委托使用及原理。
谢谢了!
在Form1中使得点击button1后,弹出form2,并且button1.enabled=false;怎么样在关闭Form2时候,使得Button1的Enabled变为true;{高手最好能给源代码解释}
如果您有时间,可以用通俗易懂的话或者例子讲解委托使用及原理。
谢谢了!
namespace Demo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.CloseHandle += CloseHandler;
f2.Show();
button1.Enabled = false;
} private void CloseHandler(object sender, EventArgs e)
{
button1.Enabled = true;
}
}
}namespace Demo
{
public partial class Form2 : Form
{
public event EventHandler CloseHandle; public Form2()
{
InitializeComponent(); FormClosed += new FormClosedEventHandler(Form2_FormClosed);
} private void Form2_FormClosed(object sender, FormClosedEventArgs e)
{
OnCloseHandle(new EventArgs());
} private void OnCloseHandle(EventArgs e)
{
EventHandler temp = CloseHandle;
if (temp != null)
temp(this,e);
}
}
}
if(f.DialogResult==DialogResult.Ok)
{
button1.enabled=true;
}
呵呵 个人建议msdn是你最好的选择
楼主连委托是什么都不知道
上面有人写的例子是对的 用到了委托
只是你没有理解而已 哈哈