How do i Turn OFF the Caps lock key in textbox. I am using WPF forms.
When textbox is focused I want to turn off caps lock.
Thanks
This is a case of the default keys in Microsoft being changed. To fix them, do the following: Press both SHIFT KEYS at the same time. This will cancel the change in the keyboard configuration.
You can fix this by going to Settings > Language > Keyboard. Under the Keyboard setting, find the Input language hotkeys at the prompt under the “Advanced Key Settings” make sure to turn off Caps Lock is selected with Press the CAPS LOCK key instead of Press the SHIFT key.
The Caps Lock reversed issue can also be fixed via a shortcut. Press Ctrl + Shift while you pressing the Caps Lock button. The Caps Lock will work properly after pressing this combination of keys again.
Its easy , Firstly add namespace
using System.Runtime.InteropServices;
then declare this in the class
[DllImport("user32.dll")]
static extern void keybd_event(byte bVk, byte bScan, uint dwFlags,
UIntPtr dwExtraInfo);
Finally , at textBox_Enter event add this code
private void textBox1_Enter(object sender, EventArgs e)
{
if (Control.IsKeyLocked(Keys.CapsLock)) // Checks Capslock is on
{
const int KEYEVENTF_EXTENDEDKEY = 0x1;
const int KEYEVENTF_KEYUP = 0x2;
keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY, (UIntPtr)0);
keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
(UIntPtr)0);
}
}
this code will turn off the Capslock .. I have used it at the enter event you can add it according to your requirement!
Checkout this link here
Use this code for WPF froms.
private void txt_KeyDown(object sender, KeyEventArgs e)
{
if (Keyboard.GetKeyStates(Key.CapsLock) == KeyStates.Toggled) // Checks Capslock is on
{
const int KEYEVENTF_EXTENDEDKEY = 0x1;
const int KEYEVENTF_KEYUP = 0x2;
keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY, (UIntPtr)0);
keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
(UIntPtr)0);
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With