当RaisePropertyChanged实际执行时

时间:2011-11-14 19:33:16

标签: c# events raiseevent

c#,VS 2011,Silverlight 4。

当RaisePropertyChanged(“...”)实际执行A,B或C时(见下文)

如果我有C#方法

public void OnSave()
{
   RaisePropertyChanged("my property");

     (A)   is it executed here or (B) after the method is finished (or (C) we cannot know)?

   bla,bla,bla (more code)





} 

或(B)这里?

1 个答案:

答案 0 :(得分:0)

RaisePropertyChanged的实现没有经过,执行调用将在块中的任何其他代码(或您所描述的选项A)之前立即进行。

...

public void OnSave()
{
    RaisePropertyChanged("my property");

    //.. All following code gets executed AFTER RaisePropertyChanged returns execution
}

我说实现不能承受的原因是因为如果方法使用异步代码,那么返回可能会立即发生,并且方法调用的实际工作可以在{{{}之后的块中的其他代码之后完成。 1}} ..我希望这不是太多的信息。