WPF笔记(1.3 属性元素)——Hello,WPF!

简介: 原文:WPF笔记(1.3 属性元素)——Hello,WPF!这一节中“属性元素”的概念可以用匪夷所思形容。1。WPF用标签元素实现对象建模,有两种:Control和Container,都用来装载内容和行为,前者如Button,后者如Window。
原文: WPF笔记(1.3 属性元素)——Hello,WPF!

这一节中“属性元素”的概念可以用匪夷所思形容。
1。WPF用标签元素实现对象建模,有两种:Control和Container,都用来装载内容和行为,前者如Button,后者如Window。
你可以这样写:

img_a6339ee3e57d1d52bc7d02b338e15a60.gif < Window img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif  
< Button Width = " 100 "  Height = " 100 " >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    
< Image Source = " tom.png "   />
img_a6339ee3e57d1d52bc7d02b338e15a60.gif  
</ Button >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif
</ Window >
也可以这样:
img_a6339ee3e57d1d52bc7d02b338e15a60.gif < Window img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif  
< Button Width = " 100 "  Height = " 100 " >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    
< TextBox Width = " 75 " > edit me </ TextBox >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif  
</ Button >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif
</ Window >
就是说,将原来Button的Image属性和TextBox属性当作对象提取出来。这是因为Button起源于一个类: ContentControl ,该类知道如何生成其装载的所有控件。

2。其实完整的写法是这样的:
img_a6339ee3e57d1d52bc7d02b338e15a60.gif < Button Width = " 100 "  Height = " 100 " >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif  
< Button.Content >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    
< Image Source = " tom.png "   />
img_a6339ee3e57d1d52bc7d02b338e15a60.gif  
</ Button.Content >
img_a6339ee3e57d1d52bc7d02b338e15a60.gif
</ Button >
但是,<Button.Content>标签内不能有两个控件,会显示语法错误,只能是一个属性元素——这时候要用Panel。
Window控件有和Button同样的用法,见下面章节。
目录
相关文章
|
5月前
|
C# 开发者 Windows
全面指南:WPF无障碍设计从入门到精通——让每一个用户都能无障碍地享受你的应用,从自动化属性到焦点导航的最佳实践
【8月更文挑战第31天】为了确保Windows Presentation Foundation (WPF) 应用程序对所有用户都具备无障碍性,开发者需关注无障碍设计原则。这不仅是法律要求,更是社会责任,旨在让技术更人性化,惠及包括视障、听障及行动受限等用户群体。
114 0
|
5月前
|
前端开发 C# Windows
WPF/C#:如何实现拖拉元素
WPF/C#:如何实现拖拉元素
63 0
|
C#
2000条你应知的WPF小姿势 基础篇<57-62 依赖属性进阶>
2000条你应知的WPF小姿势 基础篇<57-62 依赖属性进阶>
57 0
|
存储 开发框架 .NET
2000条你应知的WPF小姿势 基础篇<51-56 依赖属性>
2000条你应知的WPF小姿势 基础篇<51-56 依赖属性>
49 0
|
前端开发
WPF-Binding问题-MVVM中IsChecked属性CommandParameter转换值类型空异常
WPF-Binding问题-MVVM中IsChecked属性CommandParameter转换值类型空异常
218 0
WPF属性---重复样式和触发器
WPF属性---重复样式和触发器
129 0
|
前端开发 C# 图形学
【WPF】WPF开发用户控件、用户控件属性依赖DependencyProperty实现双向绑定、以及自定义实现Command双向绑定功能演示
Wpf开发过程中,最经常使用的功能之一,就是用户控件(UserControl)了。用户控件可以用于开发用户自己的控件进行使用,甚至可以用于打造一套属于自己的UI框架。依赖属性(DependencyProperty)是为用户控件提供可支持双向绑定的必备技巧之一,同样用处也非常广泛。
984 0
【WPF】WPF开发用户控件、用户控件属性依赖DependencyProperty实现双向绑定、以及自定义实现Command双向绑定功能演示
WPF项目中不支持 ResizingPanel,未在类型“ResizingPanel”中找到可附加的属性“ResizeWidth”
WPF项目中不支持 ResizingPanel,未在类型“ResizingPanel”中找到可附加的属性“ResizeWidth”
|
C# 前端开发
WPF如何得到一个在用户控件内部的元素的坐标位置
原文:WPF如何得到一个在用户控件内部的元素的坐标位置 例如有这样一个用户控件: 这是主窗口: ...
1443 0
|
C# C++
WPF附加属性的Set函数不调用的问题
原文:WPF附加属性的Set函数不调用的问题 今天写程序的时候用到了附加属性,我是用VS内置的propa的代码段来实现的,代码如下:     class Attach    {        public static bool GetIsEnabl...
859 0