zoukankan      html  css  js  c++  java
  • WPF子界面向父界面传递带参数的委托

    需求如下:

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

    父界面:WIN1

    子界面:WIN2

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

    1.子界面定义委托

    WIN2里写:

    public delegate void ChangeTextHandler(string text);

    public event ChangeTextHandler ChangeTextEvent;

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

    WIN1里写:

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

    这里ucSetting1就是子控件名

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

    还是在WIN1

      private void ShowMessage(string msgx)                                                

      {

          switch (msgx)

          {

             //DOSTH

          }

      

      }

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

    在WIN2写:

    public string text;

    text = "SystemSettingControl"

    if (ChangeTextEvent != null)

    {

        ChangeTextEvent(text);

    }

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

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

  • 相关阅读:
    oracle数据库
    Filter过滤器
    Json
    监听器
    Ajax
    2018年5月14日java
    EL表达式&JSTL
    JSP
    2018年5月9日JAVA-servlet02
    如何解决写脚手架过程中遇到请求github的项目接口中出现API rate limit exceeded for的问题。
  • 原文地址:https://www.cnblogs.com/JUSTSOSOBLOG/p/4121744.html
Copyright © 2011-2022 走看看