Click here to Skip to main content
15,891,033 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I am working on a textbox using WPF where I want to press only A,B,C,D,E,F and 0-9 that means hexadecimal number. But in my keydown event I can't disable lower char a,b,c,d,e,f. My code is belown:
C#
private void txtHex_KeyDown(object sender, KeyEventArgs e) 
{
         if (e.Key >= Key.A && e.Key <= Key.F)
         {
             e.Handled = false;
         }

         else if (e.Key < Key.D0 || e.Key > Key.D9)
         {
             if (e.Key < Key.NumPad0 || e.Key > Key.NumPad9)
             {
                 e.Handled = true;
             }
         }
}
How can I solve this?
Thanks in advance.
Posted

Change the CharacterCasing property of the TextBox to "Upper"
 
Share this answer
 
Instead of using KeyDown, try using PreviewTextInput[^].

This event let's you to distinguish small and capital letters because it reveals the input text and you can still cancel the input via Handled property.
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900