如何确定文本框的TextChange事件是由用户启动的? 即使我通过代码更改文本,也会触发TextChange事件。 但是,只有当用户在GUI上更改文本时,我才需要获取事件。
答案 0 :(得分:3)
使用PreviewTextInput
事件。仅当用户在TextBox中输入文本而不是在
答案 1 :(得分:2)
使用一个字段,你可以用封装的方式检查TextChanged处理程序,如
internal void SetTextrogrammatically(stringnewValue)
{
this.suppressTextChanged = true;
try
{
// Set Text
textBox.Text = newValue
}
finally
{
this.suppressTextChanged = false;
}
}
通过代码设置文本时,请使用SetTextProgrammatically。在TextChangedHandler中,检查surpressTextChanged ...