首页 新闻 搜索 专区 学院

mvvmlight relaycommand问题

0
悬赏园豆:50 [待解决问题]

我在button上绑定了一个relaycommand,如下

复制代码
 1 private bool _a = true;
 2 public bool a
 3 {
 4    get { return _a; }
 5    set 
 6    {
 7          this._a = value; 
 8          RaisePropertyChanged("a");
 9          rcmd.RaiseCanExecuteChanged(); 
10     }
11 }
12 
13 rcmd = new RelayCommand(() =>
14             {
15                 a = false;
16                 bbb();
17             }, () => a);
复制代码

bbb里面我发了一个http请求,为什么按钮是在bbb()执行完了之后才被禁用.但是通过断点查看确实是在init的时候走一次()=>a,单机后走一次a()=>a然后当a=false之后调到()=>a执行然后再执行bbb();但是从界面的现象看按钮点击了要等一下才变灰,而且我做实验把bbb()换成死循环while(true){},那么按钮永远就停在点击那个状态,不变灰。这是为什么呢?

Titan_wt的主页 Titan_wt | 初学一级 | 园豆:152
提问于:2013-07-13 14:16
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册