依赖属性与Binding
来源:互联网 发布:耽美网络剧资源百度云 编辑:程序博客网 时间:2024/05/23 20:54
什么是依赖属性:自己没存储空间,需要附加(Binding)到其他属性上并使用它的值
自定义一个 依赖属性:
public class Dependency : DependencyObject //一定要继承自DependencyObject类 { //对依赖属性封包,可以没有 public string PersonAge { get { return (string)GetValue(Age); } set { SetValue(Age,value); } } //依赖属性的定义和注册,三个参数是属性的名字,类型,和宿主类型 public static readonly DependencyProperty Age = DependencyProperty.Register("Age",typeof(string),typeof(Dependency)); }
定义一个正常的属性
class RunClass : ViewModelBase //继承ViewModelBase { private string ss; public string Ss { get { return ss; } set { ss = value; OnPropertyChanged(nameof(Ss)); //一定要有,否则不会通知依赖属性进行更改 } } }
定义ViewModelBase
class ViewModelBase : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; public void OnPropertyChanged(string pName) { if (PropertyChanged != null) { PropertyChanged(this,new PropertyChangedEventArgs(pName)); } } }
进行两个属性的Binding
public MainWindow() { InitializeComponent(); RunClass run = new RunClass(); Dependency de = new Dependency(); //进行两个属性的Binding Binding bd = new Binding("Ss") { Source = run}; BindingOperations.SetBinding(de,Dependency.Age,bd); run.Ss = "123"; string personAge = de.PersonAge; //断点检查de.PersonAge的值是否已经随run.Ss的值一起改变 string personAge1 = personAge; }
0 0
- 依赖属性与Binding
- ControlTemplate中的控件如何Binding后台自定义依赖属性
- Silverlight的依赖属性与附加属性
- Silverlight的依赖属性与附加属性
- Silverlight的依赖属性与附加属性
- Silverlight的依赖属性与附加属性
- Silverlight的依赖属性与附加属性
- JSF中的binding属性
- WPF 依赖属性的创建与使用
- 依赖属性
- 依赖属性
- 依赖属性
- 依赖属性
- 依赖属性
- WPF中的属性绑定 binding
- Silverlight中Binding属性RelativeSource
- XML与Data Binding
- WPF Tips: Data Binding Converter一例:bool与IsChecked属性(bool?)之间的转换
- 获取屏幕宽度代码
- babel无法解析es5、jsx
- android开关控件使用(一)
- 读《About Face 4 交互设计精髓》15
- post 请求与get请求的区别?
- 依赖属性与Binding
- Spring-Session配置,底层数据库使用Redis或Mysql
- 50.Product of Array Exclude Itself-数组剔除元素后的乘积(容易题)
- php模板引擎smaty之介绍
- 自定义Dialog
- 文章标题
- javascript_解析json对象
- Happy Number
- 关于Ubuntu安装java设置环境变量的问题