WPF控件模型相关概念解析

WPF是一个专门用来作用于图形界面显示的开发工具。我们可以使用它轻松创建出精美的图形界面。WPF 提供了三种用于创建控件的WPF控件模型,每一种都提供了一组不同的功能和灵活性级别。开始编写新控件之前,应先了解这些模型,这一点至关重要。#t#

10年积累的网站设计、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先建设网站后付款的网站建设流程,更有沁源免费网站建设让你可以放心的选择与我们合作。

WPF控件模型1。从 UserControl 派生

在 WPF 中创建控件的最简单的方法是创建 UserControl 的子类。UserControl 的开发模型非常类似于 WPF 中用于应用程序开发的模型:创建可视元素,使用可扩展应用程序标记语言 (XAML) 为这些可视元素指定名称并引用事件处理程序。然后,可以通过代码引用已命名的元素。

如果生成正确,UserControl 可以利用丰富内容、样式和触发器的优点。但是,若要支持模板,需要从 Control 派生以创建自定义 Control。

从 UserControl 派生的优点

在以下情况下可考虑从 UserControl 派生:

想要以类似于生成应用程序的方式生成控件。

控件仅由现有组件组成。

不需要支持复杂自定义项。

WPF控件模型2。从 Control 派生

从 Control 类派生是大多数现有 WPF 控件使用的模型。自定义 Control 旨在使用模板将运算逻辑与可视表示形式分开。尽管生成自定义 Control 不像生成 UserControl 那样简单,但自定义 Control 可提供最大的灵活性。

从 Control 派生的优点
如果您符合以下一种或多种情况,请考虑从 Control 派生,而不使用 UserControl 类:

希望通过 ControlTemplate 自定义控件的外观。

希望控件支持不同主题。

WPF控件模型3。从 FrameworkElement 派生

从 UserControl 和 Control 派生的控件依赖于组合现有元素。有时自定义组件需要的精确控制超过简单的元素组合可提供的功能。对于这些情况,使组件基于 FrameworkElement 才是正确的选择。生成基于 FrameworkElement 的组件有两种标准方法:直接呈现和自定义元素组合。

直接呈现涉及的操作包括:重写 FrameworkElement 的 OnRender 方法,并提供显式定义组件视觉效果的 DrawingContext 操作。此方法由 Image 和 Border 使用。自定义元素组合涉及的操作包括实例化和使用 Visual 类型的对象组合组件的外观。有关示例,请参见使用 DrawingVisual 对象。Track 是 WPF 中使用自定义元素组合的控件示例。也可以在同一控件中混合使用直接呈现和自定义元素组合。

从 FrameworkElement 派生的优点

如果以下一种或多种情况适用,请考虑从 FrameworkElement 派生:

想要对控件的外观进行精确控制,而不仅仅是简单的元素组合提供的内容。

想要通过定义自己的呈现逻辑来定义控件的外观。

想要以一种 UserControl 和 Control 之外的新颖方式组合现有元素。

以上就是有关WPF控件模型的相关概念解析。

标题名称:WPF控件模型相关概念解析
分享URL:http://www.mswzjz.com/qtweb/news30/186630.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联