With windows programming the way it works is by sending messages to the window everytime an action occurs, whats happenign here is when a key is held windows doesnt sa "hey that keys being pressed" it just repeatedly says "key pressed". So on the forms keyUp / KeyDown u have to set a boolean variable on whether the key is down and then check if the vari is true or false.