0
我正在開發我的第一個應用程序使用MVVM,我堅持我的命令按鈕。WPF按鈕命令在視圖中不觸發ICommand在viewmodel
在我看來,我有:
<Button x:Name="btSave" Command="{Binding AddContactCommand}" Content="Save" HorizontalAlignment="Left" Margin="183,186,0,0" VerticalAlignment="Top" Width="75"/>
在後面的代碼我有:
public partial class ContactView : Window
{
private ContactViewModel contactVM;
public ContactView()
{
InitializeComponent();
contactVM = new ContactViewModel();
this.DataContext = contactVM;
}
}
在視圖模型我有:
public ICommand AddContactCommand { get; private set; }
void AddContact()
{
ContactData ContactData = new ContactData();
bSaved = ContactData.SaveContact("Theresa","Theresa","Theresa","Theresa");
}
的AddContact()
視圖模特從未被解僱。
我做錯了什麼?
AddContact()方法與AddContactCommand有什麼關係?你在哪裏實例化屬性('AddContactCommand = new Something()')?有關'ICommand'的示例,請參見[本答案](http://stackoverflow.com/a/1468830/1997232)。 – Sinatr
僅僅因爲你*名字*方法'AddContact'和命令'AddContactCommand'並不意味着它們以任何方式相關,就你的程序而言至少是。在代碼中你缺少這樣的東西:'AddContactCommand = new ClassThatImplementsICommand(AddContact)'如果你沒有一個ICommand實現,谷歌的'RelayCommand',這是一個簡單的實現,涵蓋了基礎知識。 –
謝謝你指點我正確的方向。我現在使用RelayCommand解決了它的問題。 –