码迷,mamicode.com
首页 > Windows程序 > 详细

WPF子界面向父界面传递带参数的委托

时间:2014-11-25 20:30:26      阅读:827      评论:0      收藏:0      [点我收藏+]

标签:os   sp   on   bs   ad   ef   new   tt   nbsp   

需求如下:

父界面上有几个按钮,需要在点击按钮的时候向父界面传值,以知道该控制哪个界面显示。

父界面:WIN1

子界面:WIN2

此处或者说是子控件向父控件传值

 

1.子界面定义委托

WIN1里写:

public delegate void ChangeTextHandler(string text);

public event ChangeTextHandler ChangeTextEvent;

2.父界面在加载了子界面之后,注册委托。必须在父界面load的时候或者之前注册

WIN2里写:

ucSetting1.ChangeTextEvent += new Control.ucSetting.ChangeTextHandler(ShowMessage);

这里ucSetting1就是子控件名

3.然后在父界面写好委托相应的实现函数ShowMessage

还是在WIN2

  private void ShowMessage(string msgx)                                                

  {

      switch (msgx)

      {

         //DOSTH

      }

  

  }

4.完了之后要在子界面写触发委托的函数。

在WIN1写:

public string text;

text = "SystemSettingControl"

if (ChangeTextEvent != null)

{

    ChangeTextEvent(text);

}

然后界面运行的时候就会根据传入的参数执行相应的父界面里的函数.

其实说白了也挺简单,弄会了的话,并不难

 

WPF子界面向父界面传递带参数的委托

标签:os   sp   on   bs   ad   ef   new   tt   nbsp   

原文地址:http://www.cnblogs.com/JUSTSOSOBLOG/p/4121744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!