Хотя вышеуказанная тема была полезна. Я не мог заставить все работать, пока я не создал «пустышку» «базовое» приложение MVC 4, а затем сравнил web.configs, чтобы найти какие-либо изменения.
Если я хочу, чтобы команда выполнялась, если пользователь нажимает клавишу ВВОД, я бы хотел использовать это. Обратите внимание на умное использование привязки IsDefault: -)
<TextBox x:Name="inputBox"/>
<Button Command="{Binding CutCommand}"
CommandParameter="{Binding Text, ElementName=inputBox}"
Content="Cut"
IsDefault="{Binding IsFocused, ElementName=inputBox}" />
Если вы не хотите, чтобы кнопка была видимой, вы, конечно, можете установить ее видимость в свернутом виде. Я думаю, он все равно выполнит команду, если вы нажмете Enter.
Что вы пробовали? У меня работает этот код:
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Window.CommandBindings>
<CommandBinding Command="Cut" Executed="CommandBinding_Executed" />
</Window.CommandBindings>
<StackPanel>
<TextBox x:Name="textBox1" />
<Button Command="Cut"
CommandParameter="{Binding Text,ElementName=textBox1}"
Content="Cut" />
</StackPanel>
</Window>
С этим обработчиком событий:
private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
MessageBox.Show(e.Parameter.ToString());
}