Silverlight:当textchange事件触发时,如何在更改textbox值之前获取

时间:2012-02-16 09:42:52

标签: silverlight textbox textchanged

我有一个文本框,当textchange事件被触发时,我想将旧值与更改后的值进行比较。

如何获得旧值?

2 个答案:

答案 0 :(得分:1)

注册TextBox的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;
}

答案 1 :(得分:0)

每次触发此事件时,您都必须记下该值,或者为其指定值。

然后你可以比较它。