wpf控件设计时支持(2)

这篇介绍在wpf设计时集合项属性添加项的定义和自定义控件右键菜单的方法

集合项属性设计时支持

1.为集合属性设计器识别具体项类型

wpf设计器允许定义集合项的类型,如新发布的WPF的DataGrid控件,其中的Columns包括一下几种类型,Columns集合属性是以下几个类型的抽象类集合.要在设计器识别以下类型,就必须用到wpf设计时的扩展功能

实现这个功能很简单,只需要给该集合属性附上NewItemTypesAttribute元数据就好了.如下代码

NewItemTypesAttribute attr = new NewItemTypesAttribute(
                  typeof(DataGridTextColumn),
                  typeof(DataGridCheckBoxColumn),
                  typeof(DataGridHyperlinkColumn),
                  typeof(DataGridComboBoxColumn),
                  typeof(DataGridTemplateColumn));
builder.AddCustomAttributes("Columns", attr);

这里通过把元数据添加到元数据存储区的方式来实现,当然你也可以直接在属性上挂元数据,两种方法都可以,具体可以看第一篇的介绍.

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索设计
, 控件
, typeof
, 属性
, 类型
, datagridtextcolumn
Columns
wpf 控件设计、wpf 控件库、wpf自定义控件、wpf 动态添加控件、wpf 时间控件,以便于您获取更多的相关知识。

时间: 2024-09-16 16:49:32

wpf控件设计时支持(2)的相关文章

wpf控件设计时支持(1)

1.属性元数据 在vs IDE中,在asp.net,winfrom等开发环境下,右侧的PropertyGrid属性面板,会对属性进行分类,这有利于了解控件属性的用途. 若你之前在.net平台下做过控件开发,你应该知道这些功能是通过属性元数据实现的,比如使用Category元数据,把Content属性分到Content类别下. [Category("Content")] public object Content { get; set; } 这种方法在开发wpf自定义控件依然可用.我们以

wpf控件设计时支持(3)

wpf设计时调试 编辑模型 装饰器 1.wpf设计时调试 为了更好的了解wpf设计时框架,那么调试则非常重要,通过以下配置可以调试控件的设计时代码 (1)将启动项目配置成外部的visual studio ide启动程序devenv.exe (2)F5启动调试然后会打开一个新的visual studio ide,这个时候要记得重新打开你要调试的那个项目. 以上两个步骤就可以实现设计时调试了

asp.net控件设计时支持(4)

一.单区域编辑 1.介绍 在内置控件中,典型的则是Panel控件,如下图 其在设计时提供了一个编辑区域,可方便的编辑控件内部文本,并提供了一个标题属性,此设计时呈现效果并非呈现以后的效果.另外除Panel控件外,MultiView控件也提供相似的设计时支持.下面我们看一下类图 ContainerControlDesigner 提供单个带框区域来表示控件,注意是单个,你只需要关注以上两个属性和一个方法既可,最终的封装实现还是调用GetDesignTimeHtml 方法的,以下为属性简单说明 Fra

asp.net控件设计时支持(1)

一.ControlDesigner类 ControlDesigner作为web服务器控件的设计器的基类,你可以扩展此类. 总之你了解这个类以后你会发现原来你平时看到的控件能够在VS2005设计时中完美的呈现也是微软帮你做的.既然如此,作为一个完美的控件也应该配有设计时的支持,有时候可以让开发达到事半功倍的效果.这里先不介绍这个类其中具体的方法和属性了.我们接了会具体使用的. 二.获取设计时关联控件HTML (1) 定义控件 让我们来定义两个最简单的控件 public class DesginCo

asp.net控件设计时支持(5)

一.设计器 1.什么是设计器,看下图 所以无需解释其概念,设计器自然是帮助你能够快速的完成控件基本的编辑,节省时间. 设计器是一个Form页面,所以如果想制作设计器的话,需要一些Form的基础知识. 2.实现原理 (1)设计器可以说是属性面板的扩展版,一般情况下设计器会把控件常用的属性都列出来,供方便的设置 (2)原理还是跟第3篇一样,打开设计器时,Form通过继承自ControlDesigner的类(假设为SampleControlDesigner)获取属性值,返回的时候通过设置SampleC

asp.net控件设计时支持(3)

上篇很偷懒的写了自动格式设置. 把没讲完的补上. 一.智能标记 先看一张图. GridView右侧的小三角可以很轻松的帮助我们设置常用的属性,如下面的启动分页,启用排序等,通过这样的方式我们可以很快的完成工作.我们称这样的任务菜单为智能标记. 下面来看看如何实现 1.重写ControlDesigner的ActionLists属性 你必须重写这个属性,返回你自定义的智能标记集合(即DesignerActionListCollection),这里假设CustomControlActionList为自

asp.net控件设计时支持(2)-自动格式设置

自动格式设置 先看个图 相信大家都很熟悉吧,我们可以用这个面板很方面的使用预定的样式.我们可以称之为自动格式设置或者自动套用样式. ControlDesigner类提供了AutoFormats属性,其提供了DesignerAutoFormat类的DesignerAutoFormatCollection集合.我们来看下相关的类.

为ASP.NET控件添加设计时支持

asp.net|控件|设计 简介 Microsoft ASP.NET 为开发人员提供了一种适用于 Web 开发的.功能最为强大的新工具:服务器控件.服务器控件使开发人员能够在短时间内开发出响应速度快而且功能强大的 Web 应用程序,所需的时间与在典型的 ASP 中创建类似应用程序的时间差不多. ASP.NET 服务器控件之所以能够提供生产效率,关键原因之一在于它为 Microsoft Visual Studio .NET 开发环境中的服务器控件提供了丰富的设计时支持.开发人员可以将服务器控件从

一个比较通用的分页控件,完整的设计时支持和比较流行的分页模式(提供源码下载)

这是我写的一个分页控件,功能如下: 1.支持设计时支持和两种分页模式,其中综合分页模式的效果如下: 普通分页模式的效果如下: 2.完善的设计时支持,包括自动套用格式和设计时面板设置: 使用方法: 在aspx页面中:复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Cyclone.Custom