原文:WPF 委托 事件 B窗体调用A窗体方法 具体实现 A窗体 中加载B窗体  B窗体触发A窗体里的方法 当点击B窗体确定Button事件   给A窗体俩个TextBox赋值 并关闭B窗体 B窗体 1)定义参数类 2)定义委托 定义委托事件 3) 定义触发事件方法 4) 触发事件方法 A窗体 1)实例化B窗体对象 2)注册定义的事件 3) 实现事件 代码 B窗体 1)定义参数类 也就是 我传过去了俩个字段(这俩个字段 让我封装成的类) //对象 public class ItemEventAr…
子窗体(Win_Set): MainWindow m;                m = (MainWindow)this.Owner;                m.showText("获取文件成功\r\n"); 主窗体(MainWindow): Win_Set  ws= new Win_Set();                   ws.Owner = this;                    ws.Show(); 要调用的函数: public void sho…
Observer设计模式:监视者模式.在类中的方法中处理的结果或者消息通过事件委托 的方式发送给主窗体. 因为在其它类中直接访问主窗体类,显示内容是不能直接调用控件赋值的,当然也有别的类似查阅控件名,直接赋值的方式, 这种方式似乎不是被提倡的.而观察者模式是常用的方式. 初学者在刚开始写程序时,往往把很多的方法函数都写在了主窗体类下,很方便的调用主窗体里边的控件,给予赋值, 但代码多了肯定会乱.所以要进阶必须熟悉当前讲的方式. 下边是个简洁的带参数的事件委托的写的代码 using System;…
有时候为了减少一个页面内的代码量,会将部分内容放到子窗体中,如后台管理中用iframe来进行管理 <div> <iframe id="dviframe" src="/..."></iframe> </div> 1.在父窗体获取子窗体的windows对象 var formWindow = $("#dviframe")[0].contentWindow;//[0]是jq对象转换成Dom对象,再获取子窗体…
在父窗体里定义委托 public delegate void inis(string str); 在父窗体中定义要调用的方法 public void inigs(string gs) { textBox1.Text = gs; } 在new窗体的时候传递委托  (我这里form4是父窗体 form5是子窗体) inis i = new inis(inigs); Form5 f5 = new Form5(i); f5.Show(); 在新窗体中接收 Form4.inis ii; List<stri…
1.在父窗体中 public delegate void SetVisiableHandler();//定义委托类型 注意此委托定义在namespace下一级,在form类外 private void button1_Click(object sender,EventArgs e)//单击事件,打开子窗体 { Form2 frm = new Form2(new SetVisiableHandler(SetVisiable)); frm.Show(); } private void SetVisi…
Frm_Books窗体(窗体里面有个按钮跳转Frm_Book_Select窗体) private void Add_Book_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Frm_Book_Select book = new Frm_Book_Select(); book.Owner = this; book.ShowDialog(); } Frm_Book_Select窗体 private void B…
namespace Test { public partial class FrmMain : Form { public FrmMain() { InitializeComponent(); } public DataTable DT; private void button1_Click(object sender, EventArgs e) { FrmChild fm = new FrmOptime(this); fm.Show(); } public void BindData(){}…
利用事件冒泡的特性,给父元素绑定事件,然后判断事件对象,来给父元素的每个子元素添加事件,而不是直接在所有的子元素上绑定事件: <ul> <li></li> <li></li> <li></li> </ul> 给每个li绑定事件: li.addEventListener('click',function(){console.log(this)}); 通过委托来给li绑定事件: ul.addEventListene…
引言: 窗体间传值是每个学习WinForm新手的常见问题,最初级的方法就是 在窗体中先获取到要接受值窗体.然后通过.得到某个空间或者属性,直接赋值,这个需要接收放的窗体属性或者空间必须是public ,是极不安全的一种方式.在升级一下的新手做法就是在接受窗体中定义一个方法然后通过 调用这个方法来给某个控件或者属性赋值.这两种方法都是非安全的低级方式.非常不建议使用.本文我们讲讲如何通过委托事件(非单纯的委托)来解决窗体间信息传递的问题. 场景: 通过点击主主窗体From_Main的发送按钮,所有…