There isn't really a way to do that in the UI with the Button itself, unless you wanted to get into Windows API calls. What you could do is use the ControlPaint class to draw a picture of a depressed Button over the top of the actual Button on KeyDown and then remove it on KeyUp.