关于 ContentPropertyAttribute

ContentPropertyAttribute 是使用在类的声明上的特性,表示xmal标签内容对应的clr类中的属性,目前发现Control的子类下有这几种属性:

1.Content。这个是最常见的啦。ContentControl、Page
2.Items。ItemsControl
3.Document。有好几个类,都是带Document字样的,如FlowDocumentReader、FlowDocumentScrollViewer、DocumentViewerBase。还有一个最容易忽视的RichTextBox。
4.Text。目前就只有TextBox啦(MSDN:TextBlock 具有两个内容属性: Text 和 Inlines。),另外还有一个不常用的AccessText

另外还有部分控件没有内容属性。最常用的如PasswordBox

再看看其他的类

5.Children 。如Panel。不常用的InkCanvas
6.Child。如Decorator、Popup。Popup也不是Control的子类,为什么呢?

7.Inlines。这个也是最常用的TextBlock 类就是这样,很奇怪它不是Control的子类,为什么呢?

参考:WPF 内容模型

关于 ContentPropertyAttribute,布布扣,bubuko.com

时间: 2024-08-08 09:55:53

关于 ContentPropertyAttribute的相关文章

《WPF揭秘》

书本上的东西没有理解体会就不是自己的,理解体会了没有学以致用很快又会忘到爪哇国,先把看过的书记录在这里,以后忘记了还可以来看看. 1.XAML Xaml是一种声明式的编程语言,是一种调用.Net的API的方式,在WPF应用程序中一般用它来生成界面. 在Xaml中为对象设置的事件处理程序总是在设置属性之后(Name属性除外,对象构造后立即设置). Xaml中有一种运行时根据字符串生成对象的表达方式叫做标记扩展(MarkupExtension). 由于花括号(“{”和“}”)代表标记扩展,如果向输入

wpf 制作必输项的*标记

直接引用帮助文档上的话吧,以免下次忘记! AdornedElementPlaceholder 类 .NET Framework 3.5 其他版本 此主题尚未评级 - 评价此主题 更新:2007 年 11 月 表示 ControlTemplate 中使用的元素,该元素用于指定修饰控件相对于 ControlTemplate 中的其他元素所放置的位置. 命名空间:  System.Windows.Controls程序集:  PresentationFramework(在 PresentationFra

在 UWP 中实现 Expander 控件

WPF 中的 Expander 控件在 Windows 10 SDK 中并不提供,本文主要说明,如何在 UWP 中创建这样一个控件.其效果如下图: 首先,分析该控件需要的一些特性,它应该至少包括如下三个属性: Content: 最重要的属性,设置该属性,可以使 Expander 控件显示其内容: Header: 控件的 Header: IsExpand: 当前是否展开. 接下来是定义其 UI,在这里使用 Grid,添加两行,一行显示 Header,一行显示 Content,当 IsExpand

WPF学习------XAML 语法详述

XAML 语言规范 XAML 语言规范中也定义或引用了此处定义的 XAML 语法术语. XAML 是一种基于 XML 并遵循或扩展 XML 结构规则的语言. 其中某些术语共享自或基于描述 XML 语言或 XML 文档对象模型时常用的术语. 有关 XAML 语言规范的更多信息,请从 Microsoft 下载中心下载 [MS-XAML]. XAML 和 CLR XAML 是一种标记语言. 顾名思义,公共语言运行时 (CLR) 实现了运行时执行. XAML 本身并非 CLR 运行时直接使用的一种公共语

Windows Phone开发学习笔记(1)---------自定义弹框

Windows Phone开发学习笔记(1) ---------自定义弹框 在WP中自定义弹框是可以通过Popup类实现的. Popup的语法为: [ContentPropertyAttribute("Child")] [LocalizabilityAttribute(LocalizationCategory.None)] public class Popup : FrameworkElement, IAddChild; 这是Popup使用的小列子 Popup codePopup =

XAML

XAML定义 XAML是一种相对简单.通用的声明式编程语言,它适合于构建和初始化.NET对象. XAML仅仅是一种使用.NET API的方式,把它与HTML.可伸缩向量图形(SVG)或其他特定领域的格式或语言作比较是完全错误的.XAML由一些规则(告诉解析器和编译器如何处 理XML)和一些关键字组成,但它自己没有任何有意义的元素.因此,如果在没有WPF这样的框架的基础上讨论XAML,就如同在没有.NET Framework的基础上讨论C#一样. XAML在WPF中扮演的角色通常是令人困惑的,因此

为 Windows Phone 8.1 app 解决“The type does not support direct content.”的问题

我在 VS 14 CTP 中新建了一个空的 app store 项目名叫 PlayWithXaml ,项目的 MainPage.xaml 文件改为了以下内容: <Page x:Class="PlayWithXaml.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx

基本 XAML 语法指南

我们介绍了 XAML 语法规则,以及用于描述 XAML 语法中存在的限制或选项的术语.当出现以下情况时你会发现本主题很有用:不熟悉 XAML 语言的使用,希望加强对术语或某些语法部分的理解,或者对 XAML 语言的工作原理感兴趣,因而希望了解更多背景知识. XAML 是 XML XAML 的基本语法基于 XML,且定义有效的 XAML 必须也是有效的 XML.但是,XAML 也有自己的用来扩展 XAML 的语法概念.给定的 XML 实体可能在纯 XML 中有效,但该语法在 XAML 中可能具有不

《.NET 设计规范》第 9 章:常用的设计模式

第 9 章:常用的设计模式 9.1 聚合组件 考虑为常用的特性域提供聚合组件. 要用聚合组件来对高层的概念(物理对象)进行建模,而不是对系统级的任务进行建模. 要让聚合组件的名字与众所周知的系统实体相对应,比如 MessageQueue.Process 或 EventLog,这样就能使类型更加引人注目. 要在设计聚合组件时使初始化尽可能地简单,这样用户只需进行简单的初始化就可以使用组件.如果某一项初始化是必需的,那么由于没有对组件进行初始化而引发的异常应该明确地告诉用户应该怎么做. 不要要求聚合