【demo练习二】:WPF依赖属性的练习
2016-10-11
依赖属性demo小样:
要求:在窗口中点击按钮,利用设置“依赖属性”把Label和TextBox控件里的属性值进行改变。
=====================================================
MainWindow.xaml代码:
<Window x:Class="依赖属性1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Canvas Width="1024" Height="768">
<Label x:Name="label" Content="Label" HorizontalAlignment="Center" VerticalAlignment="Center" Canvas.Left="71" Canvas.Top="77" Background="Yellow"/>
<Button x:Name="button" Content="点击转换" Background="SkyBlue" Canvas.Left="83" Canvas.Top="188" Width="68" Click="button_Click" />
<TextBox x:Name="textbox1" Width="120" Height="30" Canvas.Left="180" Canvas.Top="70" Text="12345678"/>
<TextBox x:Name="textbox2" Width="120" Height="30" Canvas.Left="180" Canvas.Top="180" />
</Canvas>
</Window>
====================================================
MainWindow.xaml.cs代码
//设置依赖属性
public static DependencyProperty TextProperty = DependencyProperty.Register(
"Text",
typeof(string),
typeof(MainWindow),
new PropertyMetadata("",PropertyChanged)
);
public string Text
{
get { return (string)GetValue(TextProperty); }
set { SetValue(TextProperty, value); }
}
private static void PropertyChanged(DependencyObject dobj,DependencyPropertyChangedEventArgs e)
{
MainWindow control = (MainWindow)dobj;
if (control != null)
{
if (control.Text == "1")
{
control.label.Content = "YNWA!";
control.label.FontSize = 10;
control.textbox1.Text = "This is anfield!";
}
else if(control.Text == "2")
{
control.label.Content = "Make The Dream!";
control.label.FontSize = 10;
control.textbox1.Text = "This is tianjin anfield!";
}
}
}
private void button_Click(object sender, RoutedEventArgs e)
{
this.Text = this.textbox2.Text;
}
【demo练习二】:WPF依赖属性的练习的更多相关文章
- WPF自学入门(五)WPF依赖属性
在.NET中有事件也有属性,WPF中加入了路由事件,也加入了依赖属性.最近在写项目时还不知道WPF依赖属性是干什么用的,在使用依赖项属性的时候我都以为是在用.NET中的属性,但是确实上不是的,通过阅读 ...
- 扫盲-wpf依赖属性
一.什么是依赖属性 依赖属性就是一种自己可以没有值,并且可以通过绑定从其他数据源获取值.依赖属性可支持WPF中的样式设置.数据绑定.继承.动画及默认值. 将所有的属性都设置为依赖属性并不总是正确的解决 ...
- WPF依赖属性详解
WPF依赖属性详解 WPF 依赖属性 英文译为 Dependency Properties,是WPF引入的一种新类型的属性,在WPF中有着极为广泛的应用,在WPF中对于WPF Dependency P ...
- WPF依赖属性值源(BaseValueSource)
原文:WPF依赖属性值源(BaseValueSource) WPF依赖属性提供一个机制,可以获取依赖属性提供值的来源 其以BaseValueSource枚举表示 1.Default public ...
- WPF依赖属性(续)(3)依赖属性存储
原文:WPF依赖属性(续)(3)依赖属性存储 在之前的两篇,很多朋友参与了讨论,也说明各位对WPF/SL计数的热情,对DP系统各抒已见,当然也出现了一些分歧. 以下简称DP为依赖属性 ...
- WPF依赖属性(续)(1)
原文:WPF依赖属性(续)(1) 之前有写过几篇文章,详细地介绍了依赖属性的基本使用方法,如果你不想了解其内部实现机制的话,那么通过那两篇文章的介绍,足以应付平时的应用 ...
- WPF依赖属性(续)(2)依赖属性与附加属性的区别
原文:WPF依赖属性(续)(2)依赖属性与附加属性的区别 接上篇,感谢各位的评论,都是认为依赖属性的设计并不是为了节省内存,从大的方面而讲是如此.样式,数据绑定,动画样样都离不开它.这篇 ...
- 监听WPF依赖属性
原文:监听WPF依赖属性 当我们使用依赖属性的时候,有时需要监听它的变化,这在写自定义控件的时候十分有用, 下面介绍一种简单的方法. 如下使用DependencyPropertyDescripto ...
- WPF依赖属性的正确学习方法
前言 我在学习WPF的早期,对依赖属性理解一直都非常的不到位,其恶果就是,我每次在写依赖属性的时候,需要翻过去的代码来复制黏贴. 相信很多朋友有着和我相同的经历,所以这篇文章希望能帮助到那些刚刚开始学 ...
- WPF 依赖属性前言
WPF 依赖属性前言 在.net中,我们可以属性来获取或设置字段的值,不需要在编写额外的get和set方法,但这有一个前提,那就是需要在对象中拥有一个字段,才能在此字段的基础上获取或设置字段的值, ...
随机推荐
- 集合框架(04)HashMap扩展知识
Map扩展知识 map集合被使用是具备映射关系 “bigclass”: “001”, ”zhangsan” “002”, ”lisi” “smallclass” : ”001”, “wangwu” : ...
- 警告Conversion specifies type'int' but the argument has type'size_t'
代码: #import<Foundation/Foundation.h> int main(int argc,const char * argv[]){ const char *words ...
- UBIFS 术语
B+ tree: base head: budgeting: 空闲空间评估 bud: 一个日志使用的eraseblock cnode: commit: 更新index到flash上的过程 commit ...
- Android AIDL实例解析
AIDL这项技术在我们的开发中一般来说并不是很常用,虽然自己也使用新浪微博的SSO登录,其原理就是使用AIDL,但是自己一直没有动手完整的写过AIDL的例子,所以就有了这篇简单的文章. AIDL(An ...
- SQL SERVER 2012 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。 (System.Data)
标题: 连接到服务器------------------------------ 无法连接到 192.168.1.253. ------------------------------其他信息: 尝试 ...
- ES集群爆红,有未分配的片
curl GET http://192.168.46.166:9200/_cluster/health?level=indices curl -XPUT '192.168.46.166:9200/_c ...
- hadoop2.4 支持snappy
我们hadoop2,4集群默认不支持snappy压缩,可是近期有业务方说他们的部分数据是snappy压缩的(这部分数据由另外一个集群提供给他们时就是snappy压缩格式的)想迁移到到我们集群上面来进行 ...
- Angular 学习笔记——shop
<!DOCTYPE html> <html lang="en" ng-app> <head> <meta charset="UT ...
- PS 如何制作Vista的毛玻璃效果
1 对一个图像的任意一部分新建一个选区 2 对选中区域进行高斯模糊,大小为5像素 3 再次新建一个图层,填充为深蓝色(#E9E7E3),填充为10%-15%.高斯模糊0.5像素. 4 再对 ...
- JAVA经常使用集合框架使用方法具体解释基础篇二之Colletion子接口List
接着上一篇,接着讲讲集合的知识.上一篇讲了Collection接口.它能够说是集合的祖先了,我们这一篇就说说它的子孙们. 一.Collection的子接口 List:有序(存入和取出的顺序一致).元素 ...