[英]WPF RelayCommand not firing on button click
我對 WPF 和 MVVM 都沒有經驗,所以我很可能遺漏了一些東西,但是當我點擊我的按鈕時,命令沒有觸發。 我的頁面上還有一些菜單控件,我以完全相同的方式設置,當我單擊它們時,它們的命令按預期工作。
我嘗試附加一個單擊事件處理程序以確保該按鈕確實被單擊了。 我還嘗試附加一個不同的命令,該命令適用於我的菜單控件,而該命令不適用於按鈕。
<Button Grid.Row="1" Content="Add Note"
Command="{Binding InsertNoteCommand}"/>
public ICommand InsertNoteCommand { get; }
public MainViewModel()
{
InsertNoteCommand = new RelayCommand(InsertNote);
}
private void InsertNote()
{
Console.WriteLine("Note Inserted!");
}
我還應該提到我正在使用 MVVM Light
調試信息非常有用,但最后我通過將綁定指向數據上下文來解決問題。
<Button x:Name="AddNewNoteBtn" Grid.Row="1" Content="Add Note"
Command="{Binding Path=DataContext.InsertNoteCommand, ElementName=_window}"/>
如果有人對我如何改進這一點有意見,我將不勝感激。 謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.