Use KeyBinding to bind Key event to TextBox.InputBindings
<Window x:Class="Commands.NoCommandTextBox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="NoCommandTextBox" Height="300" Width="300">
<Grid>
<TextBox Name="txt"/>
</Grid>
</Window>
//File:Window.xaml.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace Commands
{
public partial class NoCommandTextBox : System.Windows.Window
{
public NoCommandTextBox()
{
InitializeComponent();
txt.InputBindings.Add(new KeyBinding(ApplicationCommands.NotACommand, Key.C, ModifierKeys.Control));
}
private void SuppressCommand(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = false;
e.Handled = true;
}
}
}
Related examples in the same category