zoukankan
html css js c++ java
.net中的观察者模式(用delegate/event实现)
using
System;
namespace
ConsoleApplication1
{
//
用户界面(观察者1)
public
class
SomeKindOfUI
{
public
void
Show(
object
anObject)
{
if
(anObject
is
SomeData)
{
ImpShow((SomeData)anObject);
}
}
public
void
ImpShow(SomeData data)
{
Console.WriteLine(
"
Observe1. The new ask price is:
"
+
data.AskPrice);
}
}
//
用户界面(观察者2)
public
class
AnotherKindOfUI
{
public
void
Show(
object
anObject)
{
if
(anObject
is
SomeData)
{
ImpShow((SomeData)anObject);
}
}
public
void
ImpShow(SomeData data)
{
Console.WriteLine(
"
Observe2. The new ask price is:
"
+
data.AskPrice);
}
}
//
业务数据(被观察对象)
public
class
SomeData
{
public
delegate
void
UpdateHandler(
object
sender);
public
event
UpdateHandler UpdateEvent;
//
被观察者中的数据
float
_askPrice;
//
改变数据的属性
public
float
AskPrice
{
set
{
_askPrice
=
value;
if
(UpdateEvent
!=
null
)
UpdateEvent(
this
);
}
get
{
return
_askPrice;
}
}
}
/**/
///
<summary>
///
Summary description for Class1.
///
</summary>
class
Class1
{
/**/
///
<summary>
///
The main entry point for the application.
///
</summary>
[STAThread]
static
void
Main(
string
[] args)
{
SomeKindOfUI ui
=
new
SomeKindOfUI();
AnotherKindOfUI anoth
=
new
AnotherKindOfUI();
SomeData data
=
new
SomeData();
data.UpdateEvent
+=
new
SomeData.UpdateHandler(ui.Show);
//
observer1
data.UpdateEvent
+=
new
SomeData.UpdateHandler(anoth.Show);
//
observer2
data.AskPrice
=
6789.2f
;
}
}
}
查看全文
相关阅读:
Connection with Web.config
sp_user_no(參數數的oracle_sp)及fn_test(有返回值的oracle參數)
xml學習心得
OOP 术语:Attributes(特性)与 Properties(属性)的区别(转载)
asp.net 4.0 新特性(转载)
详解C#中Attribute特性应用 (转载)
保存web.config文件(转载)
OOP 术语:Arguments(参量)和 Parameters(参数)的区别(转载)
HTTP调试工具:Fiddler,httpwatch 介绍(转)
C# 4.0新特性dynamic有何用处?(转载)
原文地址:https://www.cnblogs.com/silva/p/266502.html
最新文章
《Delphi 算法与数据结构》学习与感悟[4]: 关于 const
《Delphi 算法与数据结构》学习与感悟[5]: 定位一个字符位置时, Pos 函数为什么不是最快的?
《Delphi 算法与数据结构》学习与感悟[7]: 链表与数组的异同
With 特殊用法
简单ASP.NET AJAX 客户端应用:用JS直接调用WebServices方法
sql server中存儲過程的寫法格式規格
用JS讀取excel的例子
vb.net_study
Javascript 两种定义Function的方法
網頁書簽
热门文章
js的一些常用法
js用法接上
sql server中函數的寫法格式規格
xmlHTTP xmlDOC 与 C#中DataSet的结合 实现AJAX简单示例
SQL2000联机丛书:数据仓库的组成部分
一個調用Report Services報表的類
ONE
VS2005中ReportViewer 本地模式下报表呈现 入门示例
水晶報表11在.net的制作
VS2005與 Business Intelligence(商務智能)
Copyright © 2011-2022 走看看