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);

    }

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

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

  • 相关阅读:
    tmp:算法数据结构
    [转]Open Live Writer 配置
    GCC ,Clang 与 make,cmake 一览
    概率统计(1):数据分布
    ISP基础(31):Lost Frame Strategy
    支付宝对接授权及加好友
    css实现定宽高比(非内容撑出)
    display:table实现多列等高布局
    vue挂载全局组件
    两个数组根据指定字段去重
  • 原文地址:https://www.cnblogs.com/JUSTSOSOBLOG/p/4121744.html
Copyright © 2011-2022 走看看