C# WPF TextBox控件与变量的绑定

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/oHanTanYanYing/article/details/53694739

在WPF中,可以将TextBox控件(其他控件也基本一样)与相应的变量进行绑定,做出改变变量则控件也跟着改变的效果。虽然其原理跟原本的消息响应是一样的,只是在外部加了层封装,但就是因为这层封装,使得在编写界面的过程中方便了很多。
首先需要声明一个类,该类用来与控件绑定:

class MyTextshow : INotifyPropertyChanged //绑定对象  
{
    public string show;//显示
    public event PropertyChangedEventHandler PropertyChanged;
    public string Show
    {
        get { return show; }
        set
        {
            show = value;
            PropertyChanged(this, new PropertyChangedEventArgs("Show"));
        }
    }
}

在xaml文件中设置绑定

<TextBox x:Name="textBox" Text="{Binding Path=Show, Mode=TwoWay}"  HorizontalAlignment="Left" Height="38" Margin="124,72,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="261"/>

其中,继承的INotifyPropertyChanged类是用来发送消息告诉控件变量的值改变了,控件需要作出调整。其实就相当于原本MFC的时候我们修改完变量后在下面去改控件的参数,只是这边不用写出来而已。该类声明完后,实例化出相应的对象,跟控件绑定如下:

MyTextshow mtextshow = new MyTextshow();
mtextshow.show = "asdasdas";
textBox.DataContext = mtextshow;//textBox为控件名

则后面修改mtextshow变量,控件将自动作出调整。

展开阅读全文

没有更多推荐了,返回首页