WinForm中主页面和Dialog页面通信

实现主页和Dialog通信的方法有很多,这里为了提高通用性使用委托来实现,开发和测试是在Wince上使用精简版的Framework开发,在普通Winform开发上也应该能够使用

为了实现主页和弹出也通信,只需要将主页中的对页面的控制方法委托传递给Dialog页面,在Dialog中根据用户的操作调用委托给主页面传值

具体代码实现为

主页面:

        private void button4_Click(object sender, EventArgs e)
{
Dialog dialog = new Dialog(new Action<int>((int result) =>
{
if (result == 0)
{
textBox1.Text = "成功";
}
else
{
textBox1.Text = "失败";
}
}));
dialog.ShowDialog();
}

Dialog:

    public partial class Dialog : Form
{
private Action<int> ReturnResult;
public Dialog()
{
InitializeComponent();
//省略代码
}
public Dialog(Action<int> returnResult):this()
{
this.ReturnResult = returnResult;
}
private void AccessServer()
{
//省略代码
try
{
//省略代码
CloseWindows();
}
catch {
//省略代码
}
}
private void button1_Click(object sender, EventArgs e)
{
ReturnResult(1);
this.Close();
}
private void CloseWindows()
{
ReturnResult(0);
this.Close();
}
}



转载于:https://www.cnblogs.com/wk1234/archive/2011/10/28/2227999.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值