zoukankan
html css js c++ java
C#事件编程
1.定义一个 "代表"
如:
public
delegate
void
DisconnectedEventHandler(
object
sender,ClientEventArgs e);
2.定义事件参数
如:
public
class
ClientEventArgs : EventArgs
{
public
IPAddress IP
{
get
{
return
( (IPEndPoint)
this
.socket.RemoteEndPoint ).Address; }
}
public
int
Port
{
get
{
return
((IPEndPoint)
this
.socket.RemoteEndPoint).Port;}
}
public
ClientEventArgs(Socket clientManagerSocket)
{
this
.socket
=
clientManagerSocket;
}
}
3.使用"代表"定义一个事件
public
event
DisconnectedEventHandler Disconnected;
4.触发事件
protected
virtual
void
OnDisconnected(ClientEventArgs e)
{
if
( Disconnected
!=
null
)
Disconnected(
this
, e);
}
this
.OnDisconnected(
new
ClientEventArgs(
this
.socket));
5.使用事件
ClientManager newClientManager
=
new
ClientManager(socket);
newClientManager.Disconnected
+=
new
DisconnectedEventHandler(ClientDisconnected);
6.定义事件处理方法
void
ClientDisconnected(
object
sender , ClientEventArgs e)
{
if
(
this
.RemoveClientManager(e.IP) )
this
.UpdateConsole(
"
Disconnected.
"
, e.IP , e.Port);
}
欢迎光临:
http://shiningrise.cnblogs.com
查看全文
相关阅读:
2
作业5
实验十
作业 5 指针应用
九九乘法表
实验七(课堂练习)
实验六 数组 (2)
实验六 数组
课堂实验5(求从m到n之间(包括m和n)所有素数的和)
课堂实验5-2
原文地址:https://www.cnblogs.com/shiningrise/p/744345.html
最新文章
9/11包装对象
js代码学习
JavaScript语法结构
js分秒必争
以管理员身份启动ClickOnce部署的应用程序
用普通PC主板的蜂鸣器给树莓派(RPI)加个报警器
树莓派通过 HDMI
使用 Infragistics 的 NetAdvantage 组件时替换部分菜单语言的方法
清理Win8.1更新冗余的批处理代码
当前标识(NT AUTHORITYNETWORK SERVICE)没有对“C:WINDOWSMicrosoft.NETFrameworkv2.0.50727Temporary ASP.NET Files”的写访问权限。
热门文章
禁止浏览器BackSpace后退
web.config配置网站默认页面
(转)理解session和cookie的机制
Java单例模式的几种常见实现方式
一些JavaSE学习过程中的思路整理(三)(主观性强,持续更新中...)
一些JavaSE学习过程中的思路整理(二)(主观性强,持续更新中...)
LeetCode 947. 移除最多的同行或同列石头 并查集
Maven学习笔记
天梯赛练习 L3-006 迎风一刀斩 (30分) 几何关系
PAT甲级 1155 Heap Paths (30分) 堆模拟
Copyright © 2011-2022 走看看