小编ml_*_*ack的帖子

命令MVVM(WPF) - 如何返回值?

我现在一直在使用MVVM模式,但在现实生活中我仍遇到问题.这是另一个:我使用命令和冒泡事件在ViewModel中处理.到现在为止还挺好.但是我使用MVVM的项目实际上是一个类库.一旦我运行命令代码,我需要能够将一个对象发送回调用应用程序.建议的方法是什么?

具体来说:在我的调用应用程序中,我有一个XAML页面直接绑定到库的ViewModel,它包含一个对象"Thing1".单击按钮时,将调用ViewModel中的方法(将其称为"CopyThing1()").它复制"Thing1"以创建"Thing2".然后我需要将"Thing2"发送回调用应用程序.

谢谢!!!

c# wpf mvvm

9
推荐指数
2
解决办法
1万
查看次数

为什么绑定刷新延迟到委托命令完成之前?(MVVM)

我正在应用MVVM模式.我有一个按钮,当点击它时,在我的ViewModel中调用一个委托命令.在该委托方法的最开始,我设置了一个属性值(WaitOn),它应该通过显示动画控件来通知UI中的用户等待.

但是,在委托完成执行之前,显示动画控件不会刷新的绑定,此时等待完成.为什么会发生这种情况,我应该怎么做才能解决它?

示例XAML:

<Button Command="{Binding DoStuffCommand}" />
<ctl:MyAnimatedControl Name="ctlWait" Caption="Please Wait..." 
Visibility="{Binding WaitNotification}" />
Run Code Online (Sandbox Code Playgroud)

ViewModel的片段:

public bool WaitPart1On
{
  get { return _waitPart1On; }
  set
  {
    _waitPart1On = value;
    if (_waitPart1On == true)
    {
      WaitNotification = "Visible";
    }
    else
    {
      WaitNotification = "Hidden";
    }
    RaisePropertyChanged("WaitPart1On");
  }
}

public string WaitNotification
{
  get { return _waitNotification; }
  set
  {
    _waitNotification = value;
    RaisePropertyChanged("WaitNotification");
  }
}


public void DoStuff()
{
  WaitPart1On = true;
  //Do lots of stuff (really, this is PART 1) …
Run Code Online (Sandbox Code Playgroud)

data-binding refresh mvvm inotifypropertychanged

2
推荐指数
1
解决办法
1822
查看次数

标签 统计

mvvm ×2

c# ×1

data-binding ×1

inotifypropertychanged ×1

refresh ×1

wpf ×1