I don't know, but your logic with this line:
cbtn.BackColor = Color.Yellow; cbtn = btnLast;
is resetting your button back to normal, you save a copy as btnlast then copy it back over cbtn after you change it and returning it to its original state, this will make it look like it is being ignored yes?