2012-02-16 71 views

回答

1

注册文本框的KeyDown-Event。这是在按下键时以及TextBox的TextChanged-Event之前引发的事件。

在此事件中,您可以通过调用TextBox的Text-Property来获取当前的Text。

TextBox myTextBox = new TextBox(); 
myTextBox.KeyDown += KeyDownOnMyTextBox; 
myTextBox.TextChanged += TextChangedOnMyTextBox; 

string currentText = string.Empty; 
string newText = string.Empty; 

private void KeyDownOnMyTextBox(object sender, KeyEventArgs e){ 
    currentText = myTextBox.Text; 
} 

private void TextChangedOnMyTextBox(object sender, TextChangedEventArgs e){ 
    newText = myTextBox.Text; 
} 
+0

但keydown事件无法捕捉“退格”,如果用户删除文本,它还是去textChange事件,并textChange事件无法得到旧值。 – nixjojo 2012-02-17 02:39:28

0

每次发生此事件或您为其分配一个值时,您都必须记下该值。

然后你可以比较它。

相关问题