2012-01-15 66 views
2

我的視圖模型有一個事件查看模型事件綁定到按鈕點擊

public class TestViewModel 
{ 
    public event RoutedEventHandler Run; 
} 

我要觸發這個事件時,用戶視圖

上的按鈕點擊如何在一個視圖中的按鈕綁定呢?

回答

6

Routed events都是爲了控制不查看模型,如果你有什麼事情應該在一個按鈕來執行單擊command會更適合在我看來,它很容易被綁定到Button.Command

1

我想你應該使用DelegateCommand來處理這種行爲。

在您的視圖模型:

private DelegateCommand _runCommand; 
public DelegateCommand RunCommand 
{ 
    get 
    { 
     if (_runCommand == null) 
      _runCommand = new DelegateCommand(Run, CanRun); 

     return _runCommand; 
    } 
} 

void Run() 
{ 
    ... 
} 

bool CanSaveAction() 
{ 
    return true; 
} 

在您的網頁:

<Button Command="{Binding RunCommand}" /> 
+4

DelegateCommand不內置於WPF的東西。說明。 – 2013-02-28 14:05:25