Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C#
I have this code:
private void toolStripTextBox7_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (toolStripTextBox7.Text != "one" && toolStripTextBox7.Text != "two")
            {
                pictureBox21.BringToFront();
            }
            else
            {
                pictureBox20.BringToFront();
            }
        }
I want it to change the picture that moment, when user inserts "one" or "two", but this does not do it. In this case i have to write in "one" or "two" and click one more time in that box to refresh it, then it works. How to fix this?
Posted 21-Apr-13 0:52am

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

This isn't a problem - it has to do with the order in which things happen: KeyPress occurs before the text is changed by design, so you can remove key presses if you don't want non-numeric values for example.
 
Try moving your code into the TextChanged event instead, which occurs after the text is changed.
  Permalink  
Comments
Member 4347041 at 21-Apr-13 6:04am
   
Thanks. Wrong event, now it work.
OriginalGriff at 21-Apr-13 6:21am
   
You're welcome!

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

  Print Answers RSS
0 OriginalGriff 7,903
1 Sergey Alexandrovich Kryukov 7,127
2 DamithSL 5,604
3 Manas Bhardwaj 4,986
4 Maciej Los 4,820


Advertise | Privacy | Mobile
Web01 | 2.8.1411023.1 | Last Updated 21 Apr 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100