我們可以通過在方法或屬性上指定的C#屬性來進行事件發佈和訂閱嗎?通過C#屬性發布和訂閱事件
如果房地產的用途改變..然後我們需要觸發一個事件...
[FirePropertyChangedEvent] SomeProperty
我們可以通過在方法或屬性上指定的C#屬性來進行事件發佈和訂閱嗎?通過C#屬性發布和訂閱事件
如果房地產的用途改變..然後我們需要觸發一個事件...
[FirePropertyChangedEvent] SomeProperty
我已經回答了類似的問題這一個,所以生病複製我的答案:
可以說你使用的是當地的「速度」的變量,它每次你想主要的「速度」變量更新更新...
public class SpeedHolder
{
private float _speed;
public event Action<float> OnSpeedChange;
public float Speed
{
get { return _speed; }
set { SetSpeed(value); }
}
public SetSpeed(float value)
{
_speed = value;
if(OnSpeedChange != null)
OnSpeedChange(_speed);
}
}
現在
在每一個「構造」電子商務法它採用了高速浮點型變量非常腳本,你需要加入這行:SpeedHolder.OnSpeedChange += ChangeSpeed;
,有一個方法像這樣的:
public void ChangeSpeed(value)
{
speed = value;
}
一句話..沒有。你必須在對象上創建一個單獨的事件,並在屬性的setter中激發它。就像在'INotifyPropertyChanged'模型中一樣。 – Baldrick
我知道INotifypropertychanged我試圖做這樣的事情....我有很多屬性..他們必須訂閱甚至通知。我想使用attirbutes而不是委託signautre + =。我們可以用C#自定義屬性來做到這一點.... [IwillFireEvent] SomeProperty [IwillSubecribetoEvent] SomeOtherProperty。事件將在一組屬性上觸發...並且訂閱者將設置其值。 – Karthik