zoukankan      html  css  js  c++  java
  • WPF——数据绑定及属性改变事件

    一、首先需要封装一下文本框的属性,并且在实体类中添加一个实体类的属性改变函数

     public class User : INotifyPropertyChanged //INotifyPropertyChanged接口是 WPF/Silverlight 开发中非常重要的接口, 它构成了 ViewModel 的基础, 数据绑定基本上都需要这个接口。
        {
            private string _Wenben;
    
            public string Wenben
            {
                get { return _Wenben; }
                set 
                { 
                    _Wenben = value;
                    OnPropertyChanged("Wenben");    //调用属性改变函数,将Wenben扔进去来改变它  
                }
            }
    
    
            public event PropertyChangedEventHandler PropertyChanged;
            //PropertyChangedEventHandler 事件委托。
            //所谓“事件委托”,一个事件的本质是一个委托(因为事件是委托类型的)。
            //而委托的好处在于它可以动态调用不同类之间(即跨类调用)具备相同函数签名(函数参数顺序、类型、个数相同),且函数返回值必须完全相同的函数。
            public virtual void OnPropertyChanged(string propertyName)
            {
                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
                }
            }
        }

    二、然后当点击按钮的时候文本便会改变了,前提先让文本框1绑定一下数据源是Wenben

     public partial class MainWindow : Window
        {
            User  u = new User(); //先引用实体类User,并且实例化出u
            public MainWindow()
            {
                InitializeComponent();
                TextBox1.DataContext = u; //文本框1的数据源是实体类u
            }
    
            private void Button_Click_1(object sender, RoutedEventArgs e)
            {
               //点击按钮进行实体类u的属性改变
                u.Wenben = DateTime.Now.ToString("HH:mm:ss.fff");    //DateTime.Now.ToString("HH:mm:ss.fff");   时间(显示到毫秒)     
            }
        }

  • 相关阅读:
    弹出窗口,关闭窗口刷新
    小知识
    将datatable转换为model
    根据空格换行
    获取和赋值checkbox,radiobutton,页面所有控件只读
    repater列求和
    internet 协议入门
    Django URL name详解
    Django 视图与网址进阶
    Django视图与网址
  • 原文地址:https://www.cnblogs.com/lk-kk/p/4606287.html
Copyright © 2011-2022 走看看