runxinzhi.com
首页
百度搜索
C#通过事件跨类调用WPF主窗口中的控件
xaml.cs文件:
using System; using System.Timers; using System.Windows; using System.Windows.Forms; namespace ControlUsed { public partial class MainWindow { public MainWindow() { Monitor.PartEvent += OnStep;//将该类中的函数注册到Monitor静态类的PartEvent事件中。 } public void OnStep(Object sender,MessageArgs message) { Application.Current.Dispatcher.Invoke(new Action(() => { MyTextBlock.Text = message.Txtmessage;//设置对应xaml中控件的属性 })); } } }
MessageArgs类:
public class MessageArgs:EventArgs { public MessageArgs(string message) { this.TxtMessage = message; } public string TxtMessage { get; set; } }
Monitor静态类:
public static class Monitor { public static event EventHandler<MessageArgs> PartEvent;//定义在Monitor中的一个事件,参数是MessageArgs对象 public static void InFunction(string message) { var messageArg = new MessageArgs { TxtMessage=message }; if (PartEvent != null)//如果mainwindow构造函数中给PartEvent注册了函数就不为null { PartEvent(new object(), messageArg);//触发事件,执行所有注册过的函数 } } public static bool MonitorCenter() { InFunction("change");//在外部类中修改TextBlock的Text } }
相关阅读:
mysql:添加索引
mysql: update字段中带select
ASP.NET Web API 2 入门
notify()、notifyAll()和wait()
Mybatis3 框架理解
项目中用到的Java注解
使用webservice实现App与服务器端数据交互
IntelliJ idea 14 集成 tomcat 7
使用adb签名并安装Android程序
写了一个月的单元测试,总算明白大学里这门课白学了
原文地址:https://www.cnblogs.com/jameslif/p/4063337.html
最新文章
设备驱动之input子系统
设备驱动之HelloWorld
设备驱动之SPI
BAT开源
控制台报错: SCRIPT1006: Expected ')'
springmvc使用ajax进行数据交互时,session失效问题(@ResponseBody与session能否同时使用?)
SSM搭项目报错:HTTP Status 400 – Bad Request
Spring AOP 报错org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'XXXXXX' defined in class path resource..........
安装VMware-tools时,一直停在“The path "" is not valid path to the gcc binary.”
jsp servlet路径问题
热门文章
关于jsp中引用css外部样式无效时的处理方法
“错误: 编码GBK的不可映射字符” 的解决方案
关于javascript的一个小问题,请问有人看出啥问题吗?
自组织管理
js网页上画图
【linux轻松学】修改文件权限
把1970年至今的毫秒数转换为日期
微信小程序开发工具常用快捷键
centos 如何清理/dev/vda1系统盘
window下flask开发环境搭建
Copyright © 2020-2023
润新知