微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 确定文本框在丢失的焦点事件中的先前值? WPF

我有一个文本框,并有一个onlostfocus事件.

在lostfocus方法中,有没有办法可以确定用户是否实际更改了其中的值?
即我如何掌握其中的任何先前价值?

谢谢

解决方法

我想到的是一个两阶段的方法.处理文本框上的TextChanged事件并标记它.然后,当文本框OnLostFocus发生时,您只需检查您的标志以查看文本是否已更改.

以下是有关如何处理跟踪的代码段.

public class MyView
{
    private bool _textChanged = false;
    private String _oldValue = String.Empty;

    TextChanged( ... )
    {
        // The user modifed the text,set our flag
        _textChanged = true;        
    } 

    OnLostFocus( ... )
    {
        // Has the text changed?
        if( _textChanged )
        {
            // Do work with _oldValue and the 
            // current value of the textBox          

            // Finished work save the new value as old
            _oldValue = myTextBox.Text;

            // Reset changed flag
            _textChanged = false;
        }              
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐